Closed Bug 1503530 Opened 6 years ago Closed 6 years ago

[wpt-sync] Sync PR 13806 - [wptrunner] Improve errors from Selenium

Categories

(Testing :: web-platform-tests, defect, P4)

defect

Tracking

(firefox65 fixed)

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 13806 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/13806
Details from upstream follow.

Mike Pennisi <mike@mikepennisi.com> wrote:
>  [wptrunner] Improve errors from Selenium
>  
>  The `message` computed by the Selenium executor was mistakenly unused,
>  and in its place, a Python exception object was used to communicate
>  information on the failure. The string representation of Exceptions is
>  generally terse and less helpful during debugging. Replace with the
>  intended value which includes a complete stack trace and the name of the
>  exception's class.
>  
>  ---
>  
>  Prior to this patch, Python exception which were raised during Selenium-mediated testing would be reported without context. This made debugging difficult, particularly for `KeyError`s, (as in https://github.com/web-platform-tests/results-collection/issues/563):
>  
>      web-platform-test
>      ~~~~~~~~~~~~~~~~~
>      Ran 1 checks (1 tests)
>      Expected results: 0
>      Unexpected results: 1
>        test: 1 (1 error)
>      
>      Unexpected Results
>      ------------------
>      ERROR /dom/events/CustomEvent.html - 1
>  
>  With this patch applied, the reported message includes a stack trace and the name of the exception's class:
>  
>      web-platform-test
>      ~~~~~~~~~~~~~~~~~
>      Ran 1 checks (1 tests)
>      Expected results: 0
>      Unexpected results: 1
>        test: 1 (1 error)
>      
>      Unexpected Results
>      ------------------
>      ERROR /dom/events/CustomEvent.html - 1
>      Traceback (most recent call last):
>        File "/home/mike/projects/bocoup/google-wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py", line 259, in _run
>          self.result = True, self.func(self.protocol, self.url, self.timeout)
>        File "/home/mike/projects/bocoup/google-wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py", line 333, in do_testharness
>          done, rv = handler(result)
>        File "/home/mike/projects/bocoup/google-wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py", line 534, in __call__
>          self.logger.debug("Got async callback: %s" % result[1])
>      KeyError: 1
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b2dba02cdea3
[wpt PR 13806] - [wptrunner] Improve errors from Selenium, a=testonly
Result changes from PR not available.
https://hg.mozilla.org/mozilla-central/rev/b2dba02cdea3
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
You need to log in before you can comment on or make changes to this bug.