Initial implementation of live image testing.
ClosedPublic

Authored by adamwill on Mar 17 2015, 5:58 PM.

Details

Summary

This requires adding products, flavors and needles and test
cases, and tweaking some existing ones to handle the slightly
different behaviour of live images in shared tests.

The bootloader needles are simplified to match on some text
that exists on both (we need two different screenshots,
though, as for some reason the background color is different
on live vs. non-live).

The tweak to the 'Done' button needle allows it to match
when the button contains a faint dashed rectangle, as it
seems to on live installs, sometimes.

The anaconda_install_done needle's main match is the text,
which is the same for live and non-live. It captures a small
portion of the Quit/Reboot button in order to be able to
click it. openQA documents that when a needle contains
multiple areas, assert_and_click will click the centre of
the smallest area. It cannot capture the whole button
because the button's text is different in live vs. non-live.

To handle the different main hub screens in live and non-live,
a less stringent needle is added which is unregistered for
non-live tests, so they don't match on it before they've
finished updating repository metadata.

There are a few small bugfix tweaks in this too, like some
delays in user creation to try and avoid intermittent failures
there.

We also add new root_logged_in needle for the new Rawhide
console font:
https://fedoraproject.org/wiki/Changes/NewDefaultConsoleFont

Test Plan

Trigger runs against various composes and ensure that all
expected images are tested and the tests are not broken. I
have already tested this quite a bit.

Diff Detail

Repository
rOPENQATESTS os-autoinst-distri-fedora
Branch
live
Lint
No Linters Available
Unit
No Unit Test Coverage
adamwill retitled this revision from to Initial implementation of live image testing..Mar 17 2015, 5:58 PM
adamwill updated this object.
adamwill edited the test plan for this revision. (Show Details)
adamwill added reviewers: jskladan, garretraziel.

oops, probably the CPU should be changed back to 2, changing it to 1 was just a local site customization for me. I find it works better that way, though...

adamwill updated this revision to Diff 847.Mar 17 2015, 6:37 PM

Drop change of QEMUCPUS value (which is specific to me). Not
sure if the QEMUVGA and QEMURAM changes belong or not, but
leaving them for now.

jskladan accepted this revision.EditedMar 18 2015, 12:11 PM

Fine with me. Please squash the commits into more reasonable aggregates before pushing into develop.
I'm still not sold on the Live-login needle, but since it works... :)

This revision is now accepted and ready to land.Mar 18 2015, 12:11 PM
garretraziel accepted this revision.Mar 18 2015, 3:20 PM

Okay, this also looks good to me.

adamwill closed this revision.Mar 20 2015, 12:58 AM

Was merged into development branch.