(In reply to Joel Maher ( :jmaher ) (UTC -8) from comment #4) > so this isn't as simple as it should be (or I am missing the obvious). For mochitest we do screenshots in python, this typically happens when we are parsing the log (output from the in-browser JS harness) and determine a screenshot is needed. > > For reftest harness, we capture the pixels of the drawwindow and present those as a base64 encoded string to compare. For crashtest, this is run via the same harness, so plumbing in screen capture will be a bit of work, likewise adjusting the python side to detect failures from the browser by reading the logs will not be as simple as calling an api. Note that we do have full-screen capture already happening for reftest/crashtest, **when the harness is considered to have timed out*. See comment 2 for one way that I was able to force that to happen. (Having said that, it's entirely possible that this full-screen-capture API isn't easily reachable at the point where we judge individual tests to time out. But if it's possible to make it available somehow, that would be super-great for diagnosing unexpected test timeouts -- in crashtests as well as reftests, actually.)
Bug 1892364 Comment 5 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
(In reply to Joel Maher ( :jmaher ) (UTC -8) from comment #4) > so this isn't as simple as it should be (or I am missing the obvious). For mochitest we do screenshots in python, this typically happens when we are parsing the log (output from the in-browser JS harness) and determine a screenshot is needed. > > For reftest harness, we capture the pixels of the drawwindow and present those as a base64 encoded string to compare. For crashtest, this is run via the same harness, so plumbing in screen capture will be a bit of work, likewise adjusting the python side to detect failures from the browser by reading the logs will not be as simple as calling an api. Note that we do have full-screen capture already happening for reftest/crashtest, **when the harness is considered to have timed out**. See comment 2 for one way that I was able to force that to happen. (Having said that, it's entirely possible that this full-screen-capture API isn't easily reachable at the point where we judge individual tests to time out. But if it's possible to make it available somehow, that would be super-great for diagnosing unexpected test timeouts -- in crashtests as well as reftests, actually.)