New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 865117 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: Jul 20
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug


Participants' hotlists:
Hotlist-Tast


Sign in to add a comment

betty-release: graphics.Screenshot failing

Project Member Reported by rrangel@chromium.org, Jul 18

Issue description

https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8940670657703665840

2018/07/18 08:34:20 Started test graphics.Screenshot
2018/07/18 08:34:20 [10:34:19.393] Restarting ui job
2018/07/18 08:34:21 [10:34:20.262] Waiting for org.chromium.SessionManager D-Bus service
2018/07/18 08:34:21 [10:34:20.263] Asking session_manager to enable Chrome testing
2018/07/18 08:34:21 [10:34:20.268] Waiting for Chrome to write its debugging port to /home/chronos/DevToolsActivePort
2018/07/18 08:34:21 [10:34:20.927] Removing cryptohome for testuser@gmail.com
2018/07/18 08:34:22 [10:34:21.229] Finding OOBE DevTools target
2018/07/18 08:34:22 [10:34:21.298] Connecting to Chrome at ws://127.0.0.1:34376/devtools/page/9C0059EA231D6FB569FB11290266FC8B
2018/07/18 08:34:22 [10:34:21.471] Waiting for OOBE
2018/07/18 08:34:28 [10:34:27.380] Logging in as user "testuser@gmail.com"
2018/07/18 08:34:28 [10:34:27.484] Waiting for cryptohome /home/user/c947901ebc2ffe0ef287183600b48b44ab1b878f
2018/07/18 08:34:33 [10:34:32.553] Waiting for OOBE to be dismissed
2018/07/18 08:34:35 [10:34:34.454] Creating new page with URL http://127.0.0.1:36450
2018/07/18 08:34:35 [10:34:34.507] Connecting to Chrome at ws://127.0.0.1:34376/devtools/page/F31069E68EE736487A8B71C9761B5129
2018/07/18 08:34:36 [10:34:35.658] Waiting for test API extension at chrome-extension://behllobkkfkfnphdnhnkndlbkcpglgmj/_generated_background_page.html
2018/07/18 08:34:36 [10:34:35.667] Connecting to Chrome at ws://127.0.0.1:34376/devtools/page/69794D062F15C6662ED52FFAE6DA1671
2018/07/18 08:34:38 [10:34:37.015] External command failed: exit status 1
2018/07/18 08:34:38 [10:34:37.016] Command: 'screenshot' '--internal' '/tmp/tast_out.161113503/graphics.Screenshot/screenshot.png'
2018/07/18 08:34:38 [10:34:37.016] Uncaptured output:
[0718/103437:ERROR:main.cc(100)] CRTC not found. Is the screen on?
2018/07/18 08:34:38 [10:34:37.016] Error at screenshot.go:77: Failed running screenshot command: exit status 1
2018/07/18 08:34:38 [10:34:37.016] Stack trace:
chromiumos/tast/local/bundles/cros/graphics.Screenshot.func2(0x566200000000)
	/build/betty/tmp/portage/chromeos-base/tast-local-tests-cros-0.0.1-r107/work/tast-local-tests-cros-0.0.1/src/chromiumos/tast/local/bundles/cros/graphics/screenshot.go:77 +0x6a3
chromiumos/tast/local/bundles/cros/graphics.Screenshot(0xc420285080)
	/build/betty/tmp/portage/chromeos-base/tast-local-tests-cros-0.0.1-r107/work/tast-local-tests-cros-0.0.1/src/chromiumos/tast/local/bundles/cros/graphics/screenshot.go:117 +0x496
chromiumos/tast/testing.(*Test).Run.func2(0xc420285080, 0xc420520690, 0xc4201454d0)
	/build/betty/tmp/portage/chromeos-base/tast-local-tests-cros-0.0.1-r107/work/tast-local-tests-cros-0.0.1/tast-base/src/chromiumos/tast/testing/test.go:99 +0x66
created by chromiumos/tast/testing.(*Test).Run
	/build/betty/tmp/portage/chromeos-base/tast-local-tests-cros-0.0.1-r107/work/tast-local-tests-cros-0.0.1/tast-base/src/chromiumos/tast/testing/test.go:91 +0xc0
2018/07/18 08:34:38 Completed test graphics.Screenshot in 17.627s with 1 error(s)
 
Cc: marc...@chromium.org nya@chromium.org ihf@chromium.org
Components: Tests>Tast
Labels: OS-Chrome
Status: Assigned (was: Untriaged)
nya@, it sounds like this might not work on VMs. If so, I guess we'll need to introduce a new software dependency that can be used to skip this test on betty-derived boards.

Or maybe this is a known limitation in the screenshot tool that you're planning to address. Stephane or Ilja, do you know?
Screenshotting definitely used to work on VMs at one point, this might be a regression from the python->C++ conversion?
And so, we really shouldn't skip this test, but instead fix the screenshot code...
I'll disable this test to stop the failures until nya@ has a chance to comment on it.
screenshot command works on local betty VM. However I found the virtual display is not considered as internal display because its connector type is not whitelisted. I can send one-line fix to make it work on betty.

BTW I'd want to learn the policy of Tast test failures. I thought it's acceptable that informational tests to fail, but am I wrong?

Owner: nya@chromium.org
Thanks, I've abandoned the change to disable the test since it sounds like the fix is trivial.

Re informational failures, yes, I need to change betty-release's configuration. I've filed  issue 865256  to track that.
Thanks! I'll send the fix soon.

It might be better to file a separate bug for this, but since it's related: graphics.Screenshot appears to also be failing on boards without internal displays, e.g. Chromeboxes and Chromebases:

panther-release: https://stainless.corp.google.com/browse/chromeos-autotest-results/218494156-chromeos-test/
monroe-release: http://stainless/browse/chromeos-autotest-results/218713152-chromeos-test/
etc.

2018/07/18 15:48:57 Started test graphics.Screenshot
2018/07/18 15:48:57 [15:48:56.548] Restarting ui job
2018/07/18 15:48:57 [15:48:57.157] Waiting for org.chromium.SessionManager D-Bus service
2018/07/18 15:48:57 [15:48:57.164] Asking session_manager to enable Chrome testing
2018/07/18 15:48:57 [15:48:57.165] Waiting for Chrome to write its debugging port to /home/chronos/DevToolsActivePort
2018/07/18 15:48:58 [15:48:57.755] Removing cryptohome for testuser@gmail.com
2018/07/18 15:48:58 [15:48:57.781] Finding OOBE DevTools target
2018/07/18 15:48:58 [15:48:57.805] Connecting to Chrome at ws://127.0.0.1:40935/devtools/page/502DA4CCC11562D958B452581E16343E
2018/07/18 15:48:58 [15:48:57.930] Waiting for OOBE
2018/07/18 15:48:59 [15:48:58.715] Logging in as user "testuser@gmail.com"
2018/07/18 15:48:59 [15:48:58.736] Waiting for cryptohome /home/user/41a0b606836fbe0de0b286483d6a1acd3a2a379d
2018/07/18 15:49:00 [15:48:59.608] Waiting for OOBE to be dismissed
2018/07/18 15:49:01 [15:49:00.897] Creating new page with URL http://127.0.0.1:60952
2018/07/18 15:49:01 [15:49:00.968] Connecting to Chrome at ws://127.0.0.1:40935/devtools/page/72E87BD303E7039608822507932187B2
2018/07/18 15:49:01 [15:49:01.214] Waiting for test API extension at chrome-extension://behllobkkfkfnphdnhnkndlbkcpglgmj/_generated_background_page.html
2018/07/18 15:49:01 [15:49:01.223] Connecting to Chrome at ws://127.0.0.1:40935/devtools/page/F153D35E55B40A199F97DB30DFAA6700
2018/07/18 15:49:02 [15:49:01.422] External command failed: exit status 1
2018/07/18 15:49:02 [15:49:01.422] Command: 'screenshot' '--internal' '/tmp/tast_out.732618886/graphics.Screenshot/screenshot.png'
2018/07/18 15:49:02 [15:49:01.422] Uncaptured output:
[0718/154901:ERROR:main.cc(100)] CRTC not found. Is the screen on?
2018/07/18 15:49:02 [15:49:01.422] Error at screenshot.go:77: Failed running screenshot command: exit status 1

Is it possible to take screenshots on these devices when there's no display connected? If not, we might need to add a way to check whether an internal display is expected to be present (which is something I was already planning to add at some point in order to write an internal-backlight test; see issue 856738).
You won't be able to get a screenshot if there is no display/nothing on the display. No change from the old behavior. There should not be an expectation that the screenshot command succeeds unconditionally.
Status: Started (was: Assigned)
#c8: Thanks for pointing out, we should disable the test on those devices. I've filed  issue 865853  to track this.

Project Member

Comment 11 by bugdroid1@chromium.org, Jul 20

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/a8954ddcafc38318049c70052e15fb34a45870f1

commit a8954ddcafc38318049c70052e15fb34a45870f1
Author: Shuhei Takahashi <nya@chromium.org>
Date: Fri Jul 20 12:31:09 2018

screenshot: Treat virtual displays as internal.

On VM, the primary display is a virtual display, so we should
treat it as internal.

BUG= chromium:865117 
TEST=screenshot --internal /tmp/a.png  # on betty

Change-Id: I883c819636bd5a85bd1e91cf32b42d163ca319d1
Reviewed-on: https://chromium-review.googlesource.com/1142847
Commit-Ready: Shuhei Takahashi <nya@chromium.org>
Tested-by: Shuhei Takahashi <nya@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>

[modify] https://crrev.com/a8954ddcafc38318049c70052e15fb34a45870f1/screenshot/crtc.cc

Status: Fixed (was: Started)

Sign in to add a comment