TT#56376 selenium: slim down crash handler

Common.pm:
- removed checks for server crashes and nginx crashes, since a screenshot
provides those informations more reliably
- it will still check for error labels, since those could be out of screen

Change-Id: I90cf9e1bed369f2f1b3a8330e7a02d9cd14fbac1
changes/86/31186/2
Nico Schedel 6 years ago
parent 929bfbf446
commit af33c4455c

@ -364,54 +364,23 @@ sub crash_handler {
my($self, $filename) = @_;
my $jenkins = $ENV{JENKINS};
is("tests", "failed", "This test wasnt successful, check complete test logs for more info");
diag("-----------------------SCRIPT HAS CRASHED-----------------------");
diag("--------------------------------SCRIPT HAS CRASHED---------------------------------");
my $url = $self->driver->get_current_url();
my $title = $self->driver->get_title();
my $realtime = localtime();
if($self->driver->find_text("Sorry!") || $self->driver->find_text("Oops!")) {
my $crashvar = $self->driver->find_element_by_css('.error-container > h2:nth-child(2)')->get_text();
my $incident = "incident number: not avalible";
my $time = "time of incident: not avalible";
eval {
$incident = $self->driver->find_element('.error-details > div:nth-child(2)', 'css')->get_text();
$time = $self->driver->find_element('.error-details > div:nth-child(3)', 'css')->get_text();
};
diag("Server: $ENV{CATALYST_SERVER}");
diag("Url: $url");
diag("Tab Title: $title");
diag("Server error: $crashvar");
diag($incident);
diag($time);
diag("Perl localtime(): $realtime");
} elsif($self->driver->find_text("nginx")) {
my $crashvar = $self->driver->find_element_by_css('body > center:nth-child(1) > h1:nth-child(1)')->get_text();
diag("Server: $ENV{CATALYST_SERVER}");
diag("Url: $url");
diag("Tab Title: $title");
diag("nginx error: $crashvar");
diag("Perl localtime(): $realtime");
} elsif(eval{$self->driver->find_element('//*[@id="content"]//div[@class="alert alert-error"]')}) {
my $label = "Label: could not get text";
eval {
$label = $self->driver->find_element('//*[@id="content"]//div[@class="alert alert-error"]')->get_text();
};
diag("Server: $ENV{CATALYST_SERVER}");
diag("Url: $url");
diag("Tab Title: $title");
diag("Error Label: $label");
diag("Perl localtime(): $realtime");
} else {
diag("Could not detect Server issues. Maybe script problems?");
diag("If you still want to check server logs, here's some info");
diag("Server: $ENV{CATALYST_SERVER}");
diag("Url: $url");
diag("Tab Title: $title");
diag("Perl localtime(): $realtime");
}
my $label = "Could not find a label";
eval {
$label = $self->driver->find_element('//*[@id="content"]//div[@class="alert alert-error"]')->get_text();
};
diag("Server: $ENV{CATALYST_SERVER}");
diag("Url: $url");
diag("Tab Title: $title");
diag("Label: $label");
diag("Perl localtime(): $realtime");
if($jenkins) {
$self->driver->capture_screenshot($filename);
diag("Screenshot has been taken and is avalible in '/results'");
}
diag("----------------------------------------------------------------");
diag("Screenshot has been taken and is avalible in " . $filename);
};
diag("------------------------------------------------------------------------------------");
}
1;
Loading…
Cancel
Save