Commit Graph

164 Commits

Author SHA1 Message Date
Lukas Ruzicka
c97c23d485 Recreate needles to make them check different area.
This commit adjusts the area that needles look for to avoid checking
based on a menu item that has disappeared from the system.
2019-01-28 11:11:36 +01:00
Lukas Ruzicka
39d3427471 Create a test suite for application start stop testing.
Merges #86
Fixes #85
2019-01-04 15:23:03 -08:00
Adam Williamson
ea867ef431 Great Stale Needle Cleanup 2018: everything else
It's my second least favorite day of the year again: Stale
Needle Cleanup Day!

This should get rid of all non-anaconda needles that definitely
are not being used any more. Cleanup of all anaconda needles was
in the previous commit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-12-17 17:07:15 -08:00
Adam Williamson
44c92e7c7e Remove a stray, no-longer-used needle
This was part of a workaround for a Fedora Atomic Workstation
(old name for Silverblue) issue that got resolved a while back;
we forgot to take the needle out.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-12-17 14:41:29 -08:00
Adam Williamson
fd753b2e3a Handle split of 'download' and 'apply' phases in gnome-software
GNOME Software 3.30.5 split the offline update process into two
separate 'download' and 'apply' phases. So we need to handle
clicking 'download' before 'apply', if that happens.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-31 11:50:14 -07:00
Adam Williamson
86eaf0cd48 Remove no-longer-used 'uptodate' needle
Since we tweaked the g-s workaround not to use this any more, we
don't need it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-12 22:11:35 -07:00
Adam Williamson
0f1d0a1228 Add new Japanese needles
Seems the installer Japanese font changed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-12 21:01:07 -07:00
Adam Williamson
17911efcce Add a new variant needle for GNOME reboot confirm screen
Seems none of the existing needles matches on current F28 update
tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-11 16:44:41 -07:00
Adam Williamson
db4ab638da Restore modified version of the #1314991 workaround for #1638563
We're not seeing *exactly* #1314991 any more, but we're seeing
something that looks quite similar: the first attempt to find
updates just doesn't find any. No error message, no updates. I
have reported a bug for this and am investigating it, in the
meantime, let's restore the workaround, elaborated a bit, and
looking for the 'Software is up to date' screen instead of the
error message.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-11 16:07:58 -07:00
Adam Williamson
25ad8a6aeb Drop workaround for #1314991, it doesn't work any more
I rather suspect the *bug* is still basically present and it's
why this test often fails, but we no longer seem to see the
*error message* which lets us detect the bug happening. This
needle has not been hit by any test for six months. So let's
remove the workaround as it adds complexity.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-10-10 13:45:51 -07:00
Adam Williamson
e9785f5e5a Add a few more Cantarell 0.111 needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-16 08:44:38 -07:00
Adam Williamson
1034104526 Add a large chunk of needles for Cantarell 0.111
This should cover nearly everything, I hope.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-10 02:44:50 -07:00
Adam Williamson
d12cd7bb6b Add another keyboard layout needle variant
I have no idea what changed this time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-07 17:23:38 -07:00
Adam Williamson
c04f1509aa Add variant 'getting started' needle for selinux alert
An selinux alert can hide the 'getting started' window title, so
let's have a variant needle which matches on the big 'Started'
in the window instead. We may as well have both for maximum
match potential.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-06 22:19:37 -07:00
Adam Williamson
976f6cf6f2 Add new 'no notifications' needle for GNOME
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-08-13 15:56:42 -07:00
Adam Williamson
9bde9e2f9e Add a variant GDM needle for Arabic
Seems on x86_64 the text cursor is at the left of the text entry
box, but on aarch64 it's at the right. I have no idea why.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-06-25 16:16:40 -07:00
Lukas Ruzicka
8897fe45a6 Add test for Arabic installation (revisited). 2018-06-13 11:56:26 +02:00
Adam Williamson
891fb57140 Add yet another layout_us-gdm variant
Really not sure why the appearance of this needle seems to change
so much, but oh well.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-14 18:46:55 -07:00
Adam Williamson
ef322198eb Add another CJK variant needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-19 16:20:01 -07:00
Adam Williamson
555a4bba6d Add some more new needles for font changes (cantarell, CJK)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-18 16:28:28 -07:00
Adam Williamson
28080d3187 Add yet a couple more cantarell 101 needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-09 15:02:09 -07:00
Adam Williamson
fcc1d630c6 Add a couple more cantarell101 needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-30 17:52:16 -07:00
Adam Williamson
1f2e333043 Handle an auth dialog appearing after login on FAW
This will happen until a fedora-release PR is merged and sent
out for F28.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 21:24:31 -07:00
Adam Williamson
7d253b9e65 Add some variant Russian / US layout indicator needles
Seems like the indicator arrow's vertical position changed in
F28, for some reason. Anyway, new needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-27 12:07:12 -07:00
Adam Williamson
749f622f83 Another cantarell101 needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-16 13:30:30 -07:00
Adam Williamson
fa73d2b8be Initial dump of Cantarell 100 / 101 needles
There will be more to come, but I want to push these out and go
to sleep.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-16 04:44:17 -07:00
Adam Williamson
6bcd7537c0 Add several updated Japanese needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-08 18:13:44 -08:00
Adam Williamson
c5dcdb3075 One more Japanese test needle
We missed this one somehow.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-02-01 13:21:57 +01:00
Adam Williamson
7064d62b1e Update Japanese needles (default font changed in Rawhide)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-01-26 11:34:53 +01:00
Adam Williamson
672d60a840 Clean up a whole bunch of unused needles
Time for an annual spring clean. Based on the admin UI's list
of needles that haven't been matched for a long time, but with
some manual tweaking (some are actually still needed).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-01-02 16:13:47 -08:00
Adam Williamson
8276ff3d21 Fix graphical update tests with some new needle variants
The way GNOME Software displays an error after running into RHBZ
1314991 has changed, it seems, so we need a variant needle to
cope with that. Also, when an upgrade notification is visible,
the 'Restart & Update' button for doing a regular update is
shown in grey (not blue), so we need a variant needle to handle
that too.
2017-12-19 13:25:45 -08:00
Guy Menanteau
bdc6210d37 Add new needles needed for install_cyrillic_language test 2017-10-16 12:52:30 -07:00
Guy Menanteau
855b1cf729 Add new needles needed for install_asian_language test 2017-10-16 12:52:30 -07:00
Adam Williamson
99a203b8e0 Catch RHBZ #1314991 and handle it, with a soft failure
We can deal with this annoying bug by looking out for the error
we see when it happens, hitting the 'refresh' button again, and
resetting the loop counter to 1 (requires changing the loop to
a C-style loop).
2017-09-06 14:19:37 -07:00
Adam Williamson
f63ee5389a Update yama_kanji needle
Not sure if the font rendering or the GNOME highlighting changed
here, but something did.
2017-08-31 21:35:37 -04:00
Adam Williamson
bf19cf66cb Add yet another keyboard layout variant needle 2017-07-11 11:52:12 -07:00
Adam Williamson
aa9a1a1417 Add several more Japanese needle variants
More Rawhide rendering changes.
2017-07-10 15:59:58 -07:00
Adam Williamson
6d81c3095d Add some more input variant needles
More Rawhide rendering changes, Japanese and Russian...may need
one more for Japanese soon.
2017-07-10 12:38:17 -07:00
Adam Williamson
aca7de2861 Change up 'clean desktop' check again (use a util function)
Well, that OCR needle isn't working out so great, as it seems
to match when it shouldn't:

https://openqa.fedoraproject.org/tests/119217#step/_graphical_wait_login/5

So let's try another approach. Ditch the OCR needle and have a
function for checking we're at a clean desktop. It does the
normal needle match, but if we're on GNOME, it also tries
hitting alt+f1 and seeing if we're at the overview; if so, it
hits alt+f1 again (to go back to the desktop) and returns.
2017-07-10 11:47:07 -07:00
Adam Williamson
9cc8b594fe Add variant GDM US layout needle
Looks like another rendering change in Rawhide.
2017-07-10 10:43:52 -07:00
Adam Williamson
90d64434b4 Re-do new 'desktop_clean' needles
The F26 background does not change with the time of day, so that
needle should serve as-is, it's just no use for Rawhide. For
Rawhide, let's try a needle with an OCR match on 'Activities',
plus a tiny match area for a pure white block (expected to be
matched in the user menu area), since os-autoinst requires all
needles to include a match area for some reason.
2017-06-19 19:49:01 -07:00
Adam Williamson
eba2fdf033 Remove new desktop_clean needles again
These are no use :/ The Rawhide default background is a 'changes
with the time of day' one, and with the transparent top bar,
that makes a proper needle match impossible to reliably achieve,
as there is not a single pixel of the 'clean desktop' which
will always be the same any more. We'll have to come up with
something else. I'm trying out the use of an OCR match now.
2017-06-19 18:33:06 -07:00
Adam Williamson
0aa975c1ee Tweak the new desktop background needle image
Oh god, I hope this thing isn't randomly different brightness,
because that would suck hugely...
2017-06-16 16:50:29 -07:00
Adam Williamson
8190a5f790 Add another transparent top bar needle with different background 2017-06-16 15:10:02 -07:00
Adam Williamson
c6e563d81e Add new 'GNOME clean desktop' needle for transparent top bar
The GNOME top bar is now transparent in Rawhide, which broke the
'clean desktop' needle. It also means it'll break every time
the background changes, from now on :( Update the needle.
2017-06-16 14:52:49 -07:00
Adam Williamson
0b9006f1e1 Disambiguate another needle name 2017-03-29 21:24:47 -07:00
Adam Williamson
b17cf91c2d Add new GNOME update notification only needle
GNOME notification design changed a bit in F26 and Rawhide.
2017-03-27 15:35:50 -07:00
Adam Williamson
cf9fa890fa Avoid identical needle names in subdirectories
openQA has some problems handling needles with identical names
in different subdirectories. We haven't had the cycles to send
fixes for this yet, so for now, let's just rename all such
needles we have.
2017-01-25 10:32:14 +01:00
Adam Williamson
c4f32ab5ad add an Asian (Japanese) language install test
Summary:
Include some basic testing of Japanese input, and split the
input testing (including Russian) into a separate module, since
it's not really part of 'login' testing.

Test Plan:
Run the test, and the Russian and French tests too to
make sure they didn't break. Tested on staging. Note the Japanese
test soft fails, intentionally, at present, as I discovered a bug
while working on it:
https://bugzilla.gnome.org/show_bug.cgi?id=776189

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1072
2016-12-21 08:41:00 -08:00
Adam Williamson
0fa6138448 Have non-English tests do graphical install and login
Summary:
The non-English tests so far did not test that graphical login
worked as expected, which is a fairly large hole. With this
change, they should do a Workstation install and test login to
both GNOME and the console works as expected. KDE is not yet
tested.

As part of this we tweak the implementation of keyboard layout
switching in graphical environments to use a generic function
in main_common which can handle both anaconda and desktops
(just GNOME at present, but should extend easily to any desktop
with a known switcher key and a visible layout indicator),
replacing the anacondatest class method. I kinda don't like that
the test has to specifically tell the function when it's in
anaconda, but I don't think I want to start experimenting with
a global 'test phase' openQA variable or anything like that at
present.

Fixes T842.

Test Plan:
Run the French and Russian install tests and check
they work as expected. Also run an English Workstation install
if you like, and make sure that didn't break. This change is
live on staging ATM, seems to work fine.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Maniphest Tasks: T842

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1071
2016-12-16 09:40:29 -08:00
Adam Williamson
85d9fa4bf6 Add one more F24 needle variant 2016-12-07 17:29:15 -08:00
Adam Williamson
8510fbc008 Add updated variants of a few more needles 2016-12-07 16:11:27 -08:00
Adam Williamson
7b31b8263e Force GNOME to notify updates, re-enable test on Workstation
Summary:
GNOME's update notification criteria are pretty braindead: it
fires the update check timer once on login then once every hour
thereafter, but only actually checks for and notifies of updates
once a day if it's after 6am(?!?!?!). So we have to do a bunch
of fiddling around to ensure we reliably get a notification.
Move the clock to 6am if it's earlier than that, and reset the
'last update check' timer to 48 hours ago, then log in to GNOME
after that.

Note: I thought this still wasn't fully reliable, but I've looked
into all the recent failures of either test on staging and
there's only one which was really 'no update notification came
up', and the logs clearly indicate PK did run an update check,
so I don't think that was a test bug (I think something went
wrong with the update check). The other failures are all 'GNOME
did something wacky', plus one case where the needle didn't quite
match because I think the match area is slightly too tall; I'll
fix that in a second.

Test Plan:
Run the tests on both KDE and GNOME and check they
work properly now (assuming nothing unrelated breaks, like KDE
crashing...)

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1039
2016-10-27 16:23:59 -07:00
Adam Williamson
e9ce14a891 consolidate login waits, use postinstall not entrypoint for base
Summary:
I started out wanting to fix an issue I noticed today where
graphical upgrade tests were failing because they didn't wait
for the graphical login screen properly; the test was sitting
at the 'full Fedora logo' state of plymouth for a long time,
so the current boot_to_login_screen's wait_still_screen was
triggered by it and the function wound up failing on the
assert_screen, because it was still some time before the real
login screen appeared.

So I tweaked the boot_to_login_screen implementation to work
slightly differently (look for a login screen match, *then* -
if we're dealing with a graphical login - wait_still_screen
to defeat the 'old GPU buffer showing login screen' problem
and assert the login screen again). But while working on it,
I figured we really should consolidate all the various places
that handle the bootloader -> login, we were doing it quite
differently in all sorts of different places. And as part of
that, I converted the base tests to use POSTINSTALL (and thus
go through the shared _wait_login tests) instead of handling
boot themselves. As part of *that*, I tweaked main.pm to not
require all POSTINSTALL tests have the _postinstall suffix on
their names, as it really doesn't make sense, and renamed the
tests.

Test Plan: Run all tests, see if they work.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1015
2016-09-27 11:48:15 -07:00
Adam Williamson
a067d0655f add a desktop notifications test
Summary:
this more or less covers desktop_error_checks and desktop_
update_notification, though it can't really distinguish
between them easily. All we know is that if both the live and
postinstall versions of this test pass, both of those tests
pass. Any fails will have to be investigated manually.

Test Plan:
Run the tests for both KDE and Workstation, see
what happens. Workstation will fail for F25 and Rawhide at
present, due to SELinux/abrt notifications.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1004
2016-09-23 16:03:13 -07:00
Adam Williamson
e8b20ec73f add a desktop_update_graphical test
Summary:
Very similar to the CLI update test, but using the desktops'
update applications. This is based off the CLI update test
branch as it uses the shared functions that branch introduced.
We do not use the fake update packages, as they don't really
do anything useful for these tests; for dnf they can help us
distinguish between issues with the dnf mechanism and issues
with the repos, but we can't really tell that in the graphical
case. So we only use the python3-kickstart package here.

Test Plan:
Run the test on both KDE and GNOME and ensure it
performs as intended. I've been testing it on staging, so you
can see it there.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D1010
2016-09-22 11:38:51 -07:00
Adam Williamson
f99411e0cc add new font rendering needles for GNOME login 2016-09-01 10:41:22 -07:00
Adam Williamson
232dad604c add a bunch of needles for changed font rendering
font rendering has changed somehow in both Rawhide and F25
updates-testing, retake a bunch of needles for this. Some more
may be needed later in tests that are currently failed or
skipped for other reasons.
2016-08-25 16:01:26 -07:00
Adam Williamson
ecd7ce6b3f add changed font rendering next_button variant 2016-08-23 22:14:47 -07:00
Adam Williamson
1286eb79d7 tweak name of that last needle
this isn't actually f25 specific, I don't think...the tests
that failed are the Workstation network install tests, which
use updates-testing, so I think they're getting the same font
rendering change as just showed up in Rawhide. So these should
actually be correct for both branches, let's just leave the
name as the date.
2016-08-23 13:27:52 -07:00
Adam Williamson
038b2ceb25 add another gdm_input variant for current f25
something changed here again...
2016-08-23 12:22:02 -07:00
Jan Sedlák
6fdc9934d4 add new graphical_desktop_clean needle
See https://openqa.fedoraproject.org/tests/27661#step/_graphical_wait_login/11

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D962
2016-08-09 12:39:10 +02:00
Jan Sedlák
8066beba91 add new GNOME login input
Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D878
2016-06-27 12:17:45 +02:00
Josef Skladanka
0d488890ba Organize needles to directories (step 2/2)
Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D744
2016-05-13 13:43:31 +02:00