1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-09-16 21:07:22 +00:00
os-autoinst-distri-fedora/tests/server_cockpit_basic.pm
Adam Williamson 20ef09d4f4 Protect against long load times in Cockpit
We seem to be hitting very long loads on the Services and Logs
pages of Cockpit in recent Rawhide testing especially. As I don't
have time to deeply debug this at the moment, let's just give it
longer (but make it a soft failure when it takes longer than
expected).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-12 10:21:34 +02:00

60 lines
1.7 KiB
Perl

use base "installedtest";
use strict;
use testapi;
use utils;
use cockpit;
sub run {
my $self = shift;
# run firefox and login to cockpit
start_cockpit(1);
# go to the logs screen
assert_and_click "cockpit_logs";
# the date dropdown changes and messes with the button locations, so wait
wait_still_screen 2;
# set priority to info and above in case there are no errors
assert_and_click "cockpit_logs_priority_text";
send_key "backspace";
send_key "backspace";
send_key "backspace";
send_key "backspace";
type_string "info\n";
wait_still_screen 5;
# now click an entry
if (check_screen "cockpit_logs_entry", 30) {
click_lastmatch;
}
else {
assert_and_click "cockpit_logs_entry";
record_soft_failure "Log refresh took a long time";
}
# check we get to the appropriate detail screen
unless (check_screen "cockpit_logs_detail", 30) {
assert_screen "cockpit_logs_detail", 60;
record_soft_failure "Accessing log entry took a long time";
}
# go to the services screen
assert_and_click "cockpit_services";
wait_still_screen(timeout => 90, stilltime => 5);
# click on an entry
if (check_screen "cockpit_services_entry") {
click_lastmatch;
}
else {
assert_and_click "cockpit_services_entry";
record_soft_failure "Loading services screen took a long time";
}
# check we get to the appropriate detail screen...but this click
# often gets lost for some reason, so retry it once
assert_and_click "cockpit_services_entry" unless (check_screen "cockpit_services_detail", 10);
assert_screen "cockpit_services_detail";
}
sub test_flags {
return {fatal => 1};
}
1;
# vim: set sw=4 et: