DesktopDeviceCaptureTest.Capture failed without reboot |
||||||||
Issue descriptionre: https://bugs.chromium.org/p/chromium/issues/detail?id=678864 DesktopDeviceCaptureTest.Capture succeed once after reboot, but fails after that. https://build.chromium.org/p/chromium.fyi/builders/CrWinGoma Jan 09 23:42 236b242417b64ccb62084dd6a6b63f50074b9897 failure #50423 Failed steps failed content_unittests Jan 09 23:34 7a7dee0d2d921c83a17984b143d8b1988f49c93a failure #50422 Failed steps failed content_unittests Jan 09 23:25 50b51c228aac6489fe29c744d8140ee20ab62f8d failure #50421 Failed steps failed content_unittests Jan 09 23:18 accb81312b4555356dd49253d156e4a8b9eac784 failure #50420 Failed steps failed content_unittests Jan 09 23:05 b7b01ac5e2085ad23f1a01b84b2ce27daced0f70 failure #50419 Failed steps failed content_unittests Jan 09 22:41 5347b46f28ff183a55d8858b5a604aeee45d984c failure #50418 Failed steps failed content_unittests Jan 09 22:17 eb5e40651ca7d137d9b4840a61ce050b5ac04f12 failure #50417 Failed steps failed content_unittests Jan 09 21:50 62b8c3d48cfc7b4e090c0d33f409559b299fd9a1 success #50416 Build successful Jan 09 21:44 ?? exception #50415 Exception interrupted exception remote_run_result rebooted at #50415, succeeded at #50416, but failing since #50417 DesktopCaptureDeviceTest.Capture (run #1): [ RUN ] DesktopCaptureDeviceTest.Capture [6116:6984:0109/223928.358:3039828:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] [6116:6984:0109/223928.392:3039859:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] [6116:6984:0109/223928.426:3039906:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] [6116:6984:0109/223928.460:3039937:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] [6116:6984:0109/223928.494:3039968:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] .. [2796:9624:0109/224129.944:3161421:WARNING:screen_capturer_win_gdi.cc(221)] BitBlt failed: [0x00000005] c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(313): error: Value of: done_event.TimedWait(TestTimeouts::action_max_timeout()) Actual: false Expected: true c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(316): error: Expected: (format.frame_size.width()) > (0), actual: 0 vs 0 c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(317): error: Expected: (format.frame_size.height()) > (0), actual: 0 vs 0 c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(318): error: Value of: format.frame_rate Actual: 0 Expected: kFrameRate Which is: 30 c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(319): error: Value of: format.pixel_format Actual: 0 Expected: media::PIXEL_FORMAT_ARGB Which is: 10 c:\c\crwingoma\src\contentrowser\media\capture\desktop_capture_device_unittest.cc(321): error: Value of: frame_size Actual: 8057644 Expected: format.frame_size.GetArea() * 4 Which is: 0 [ FAILED ] DesktopCaptureDeviceTest.Capture (30005 ms)
,
Jan 10 2017
Yes, the error log is newly added to the ScreenCapturerWinGdi, which is the capturer DesktopCaptureDevice is backed by default. Before webrtc change https://codereview.webrtc.org/2553353002, ScreenCapturerWinGdi will silently ignore the error, and return a white or black, I cannot quite remember :(, desktop frame. But considering in desktop_capture_device_unittest, it actually did not check the result returned, the test failed silently before. To the 0x00000005, it's access denied. But I cannot quite tell the reason of this return value, otherwise I would have fixed it already. Since you do not actively check the capturer result, I think a reliable way to do in DesktopCaptureDeviceTest is to use fake DesktopCapturer implementations. There is a FakeScreenCapturer implementation in desktop_capture_device_unittet.cc, or you can also try https://cs.chromium.org/chromium/src/third_party/webrtc/modules/desktop_capture/fake_desktop_capturer.h?q=fakedesktopcapturer&sq=package:chromium&l=34.
,
Jan 10 2017
Adding sergeyu@ and miu@ hoping for additional comments from them. I agree we could avoid running into this issue by using a fake DesktopCapturer implementation, but that would change the purpose of the test. Is the test supposed to be an integration test that verifies that desktop capture works on the supported platforms? Or is it a unit test that is supposed to test class DesktopCaptureDevice in isolation?
,
Jan 10 2017
Sorry, I misunderstood the context, I thought you were the new owner of the DesktopCaptureDevice. I have no background knowledge about DesktopCaptureDeviceTest. But the DesktopCaptureDeviceTest.Capture test does not check any pixels returned from DesktopCapturer, so I assume it only tests DesktopCaptureDevice itself instead of underlying DesktopCapturer. And it's also not reasonable to test DesktopCapturer in DesktopCaptureDeviceTest, they are covered by their own test cases. These are my two cents. AFAICT, QiangChen@ has done some work recently on it, maybe he could provide more information.
,
Jan 18 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/build.git/+/bef4fdb2ad55bbe00d026723a88df417d303e057 commit bef4fdb2ad55bbe00d026723a88df417d303e057 Author: Takuto Ikuta <tikuta@google.com> Date: Tue Jan 17 01:11:18 2017 Enable auto_reboot on Goma canary buildbot CrWinGoma (goma canary bot) on chromium.fyi failed nearly one month. https://build.chromium.org/p/chromium.fyi/builders/CrWinGoma Reboot maybe fix the issue temporarily. BUG=678864,679651 Change-Id: I8416460971e775ea8f173ae1f1ced833cf0428c3 Reviewed-on: https://chromium-review.googlesource.com/428595 Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org> Reviewed-by: Yoshisato Yanagisawa <yyanagisawa@chromium.org> Reviewed-by: Fumitoshi Ukai <ukai@chromium.org> Reviewed-by: Shinya Kawanaka <shinyak@chromium.org> Commit-Queue: Takuto Ikuta <tikuta@google.com> [modify] https://crrev.com/bef4fdb2ad55bbe00d026723a88df417d303e057/masters/master.chromium.fyi/master.cfg
,
May 23 2017
Won't be able to work on this for the foreseeable next weeks => marking as available
,
Feb 7 2018
,
Feb 7 2018
,
Aug 1
|
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by chfremer@chromium.org
, Jan 10 2017Owner: zijiehe@chromium.org
Status: Assigned (was: Untriaged)