Bug 29565 - selenium/regressions.t can fail on slow boxes
Summary: selenium/regressions.t can fail on slow boxes
Status: Pushed to master
Alias: None
Product: Koha
Classification: Unclassified
Component: Test Suite (show other bugs)
Version: unspecified
Hardware: All All
: P5 - low normal (vote)
Assignee: Jonathan Druart
QA Contact: Testopia
URL:
Keywords:
Depends on:
Blocks: 25551
  Show dependency treegraph
 
Reported: 2021-11-24 08:26 UTC by Jonathan Druart
Modified: 2022-01-13 04:52 UTC (History)
1 user (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Text to go in the release notes:
Version(s) released in:
21.11.00


Attachments
Bug 29565: Prevent regressions.t to fail on slow boxes (1.48 KB, patch)
2021-11-24 08:28 UTC, Jonathan Druart
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Druart 2021-11-24 08:26:06 UTC
#   Failed test 'Encoding in session variables'
#   at t/db_dependent/selenium/regressions.t line 300.
Can't call method "get_text" on an undefined value at t/db_dependent/selenium/regressions.t line 285.
Comment 1 Jonathan Druart 2021-11-24 08:28:59 UTC
Created attachment 127972 [details] [review]
Bug 29565: Prevent regressions.t to fail on slow boxes

It's failing randomly on some Jenkins' nodes

 #   Failed test 'Encoding in session variables'
 #   at t/db_dependent/selenium/regressions.t line 300.
 Can't call method "get_text" on an undefined value at t/db_dependent/selenium/regressions.t line 285.

It can be recreated locally with the following changes:
@ t/lib/Selenium.pm:50 @ sub new {
     );
     bless $self, $class;
     $self->add_error_handler;
-    $self->driver->set_implicit_wait_timeout(5000);
+    $self->driver->set_implicit_wait_timeout(1000);
     return $self;
 }

@ t/lib/Selenium.pm:50 @ sub new {
     );
     bless $self, $class;
     $self->add_error_handler;
-    $self->driver->set_implicit_wait_timeout(5000);
+    $self->driver->set_implicit_wait_timeout(1000);
     return $self;
 }

This patch suggests to simply double the timeout.
Comment 2 Jonathan Druart 2021-11-24 08:37:01 UTC
Patch pushed to master for 21.11.00
Comment 3 Jonathan Druart 2022-01-13 04:52:08 UTC
Not fixed, Koha_Master/1885

00:58:27 koha_1       |     # Looks like you planned 18 tests but ran 1.
00:58:27 koha_1       | 
00:58:27 koha_1       | #   Failed test 'Encoding in session variables'
00:58:27 koha_1       | #   at t/db_dependent/selenium/regressions.t line 300.
00:58:27 koha_1       | Can't call method "get_text" on an undefined value at t/db_dependent/selenium/regressions.t line 285.
00:58:27 koha_1       | # Looks like your test exited with 2 just after 6.
00:58:27 koha_1       | [23:58:24] t/db_dependent/selenium/regressions.t
Comment 4 Jonathan Druart 2022-01-13 04:52:36 UTC
(In reply to Jonathan Druart from comment #1)
> @ t/lib/Selenium.pm:50 @ sub new {
>      );
>      bless $self, $class;
>      $self->add_error_handler;
> -    $self->driver->set_implicit_wait_timeout(5000);
> +    $self->driver->set_implicit_wait_timeout(1000);
>      return $self;
>  }
> 
> This patch suggests to simply double the timeout.

5000*2=1000??