Material Design Settings page is missing IDs for buttons |
||||
Issue descriptionThe new material design settings page does not have an ID for the button to click to mirror the displays. Repro steps: (0) Chrome version 62.0.3186.0 (1) Connect ChromeOS device to an external display (2) navigate to chrome://settings/display (3) right click to inspect the toggle button to the right of "Mirroring". See that the "paper-toggle-button" element does not have an ID. Without an ID for buttons, it makes it difficult to write tests. I also hear that not having them is a problem for accessibility as well. See Google bug https://b.corp.google.com/issues/64753238 . This is breaking our tests.
,
Aug 17 2017
Yes. In the past "display-options-select-mirroring" element controlled mirroring an external display. This is breaking our existing tests so this is a P2. Video team can't test playback performance metrics on ChromeOS without this element having an ID.
,
Aug 17 2017
Spoke with stevenjb@. He told me that "Tests that want to set display settings should use an extension that uses the chrome.system.display API) https://developer.chrome.com/apps/system_display See chrome.system.display.setDisplayProperties" So I'm gonna just use an extension to set this up instead of using Chromedriver. That means that the missing IDs aren't a problem for me.
,
Aug 21 2017
Relying on specific UI, especially something as changeable as the button ids, is definitely a problem.
As a short term workaround, one could try to execute something like the following JS from the chrome://settings page, assuming chromedriver allows that:
chrome.system.display.getDisplayLayout(function(layouts) {
if (layouts.length < 2)
// ERROR
chrome.system.display.setDisplayProperties({
id: layouts[1].id,
mirroringSourceId: layouts[0].id,
});
});
An extension is a better approach, but we may need to whitelist it in _api_features.json (unless you can run your test in kiosk mode).
,
Jan 22 2018
|
||||
►
Sign in to add a comment |
||||
Comment 1 by tbuck...@chromium.org
, Aug 17 2017Labels: -Pri-2 Pri-3
Owner: dpa...@chromium.org