-
Notifications
You must be signed in to change notification settings - Fork 208
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix skipping Selenium tests #5349
Conversation
8a054ee
to
a706664
Compare
Huh. Well, the failure is in a file touched in the PR, but it doesn't immediately make any sense to me...
|
The more detailed logs (visible via the artifacts tab in CircleCI) are only slightly more helpful:
So with your change it would still attempt to start the web UI process. Maybe a combination of
EDIT: It failed very quickly with
which is definitely unrelated. I'll retrigger it later again. EDIT: After retrying again the failure is reproducible. |
That test does use selenium, the next line right after the driver_missing call is It's the test I had to reorder slightly in the PR - I had to make the Possibly the problem is with doing |
e713c4a
to
7396e0c
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #5349 +/- ##
=======================================
Coverage 98.32% 98.32%
=======================================
Files 389 389
Lines 37319 37320 +1
=======================================
+ Hits 36693 36694 +1
Misses 626 626
☔ View full report in Codecov by Sentry. |
# can't use driver_missing here as it uses skip_all but we have | ||
# already run two 'tests' in setup_obs_rsync_test, so we'll skip | ||
# the old-fashioned way | ||
diag 'Install Selenium::Remote::Driver and Selenium::Chrome to run these tests'; # uncoverable statement |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please keep this within driver_missing
and make it configurable
Not sure what changed, but on current Fedora Rawhide, just 'exit'ing like this now results in a 255 exit code and a failed test. Before: Install Selenium::Remote::Driver and Selenium::Chrome to run these tests ./t/ui/27-plugin_obs_rsync_status_details.t ................. ok Install Selenium::Remote::Driver and Selenium::Chrome to run these tests ./t/ui/28-keys_to_render_as_links.t ......................... ok All tests successful. after: Install Selenium::Remote::Driver and Selenium::Chrome to run these tests ./t/ui/27-plugin_obs_rsync_status_details.t ................. ok Install Selenium::Remote::Driver and Selenium::Chrome to run these tests ./t/ui/28-keys_to_render_as_links.t ......................... skipped: (no reason given) ... ./t/ui/28-keys_to_render_as_links.t (Wstat: 65280 (exited 255) Tests: 0 Failed: 0) Non-zero exit status: 255 This uses `plan skip_all` to skip these tests correctly. Signed-off-by: Adam Williamson <[email protected]>
7396e0c
to
028fa21
Compare
OK, so when I came back to this after the discussion at Test-More/test-more#919 , I came up with this idea: bail early in the troublesome test after all, but do it by using haarg's suggestion to use Test::Needs is an interesting one - we could look at dropping |
Not sure what changed, but on current Fedora Rawhide, just 'exit'ing like this now results in a 255 exit code and a failed test. Before:
Install Selenium::Remote::Driver and Selenium::Chrome to run these tests
./t/ui/27-plugin_obs_rsync_status_details.t ................. ok
Install Selenium::Remote::Driver and Selenium::Chrome to run these tests
./t/ui/28-keys_to_render_as_links.t ......................... ok All tests successful.
after:
Install Selenium::Remote::Driver and Selenium::Chrome to run these tests
./t/ui/27-plugin_obs_rsync_status_details.t ................. ok
Install Selenium::Remote::Driver and Selenium::Chrome to run these tests
./t/ui/28-keys_to_render_as_links.t ......................... skipped: (no reason given) ...
./t/ui/28-keys_to_render_as_links.t (Wstat: 65280 (exited 255) Tests: 0 Failed: 0)
Non-zero exit status: 255
This uses
plan skip_all
to skip these tests correctly. We also have to reorder one test slightly so we skip before running any tests.