Asynchronous Clipboard API (test survey) |
||||||||||||
Issue descriptionTesting POC : Desktop : candrada@, bustamante@ Test Planning ============= * Does the feature need manual testing? Sadly, yes. * Feature implementation status (what is currently working and not working/known issues, all the code landed in canary, ready for testing etc.) API present in dev/canary (under flag). Code to add permissions (to protect access to the api): Landed: https://chromium-review.googlesource.com/c/chromium/src/+/804973 Reverted due to flaky test Currently being re-landed: https://chromium-review.googlesource.com/c/chromium/src/+/846725_ * Link to Design Doc: https://docs.google.com/document/d/1Ca5dS8amn6HA7VyOqZMwpmyUwN34zn917qc89KBt6gs/edit * Link to Test Plan: (High level test cases, specific setup, flags etc) Automated layout tests, manual WPT https://docs.google.com/spreadsheets/d/1V0l7Njc2IVU_Wp9pMwgP4dnjnprAnJEj1-PkkozuJVQ/edit?pli=1#gid=653445387 https://docs.google.com/spreadsheets/d/1eibUGYxytlyNhr36Rgfe4S5TsakjdRDDL_or1u5KHqA/edit?pli=1#gid=0 * Are there any special points of interest from a testing perspective? API provides read/write access to the (shared) system clipboard, which means that most tests cannot be run in parallel (. * Link to demos (if any): https://permission.site/ Read note at bottom of table about how to enable the async clipboard api. * Targeted Platforms. All. * Is the work flow same as desktop and Mobile? (Answer if applicable to both Desktop and Mobile) Yes (it's a new JS API call). Automation ========== * What's automated? (Unit tests, API tests, Browser tests) Please provide links to automated tests. Unit tests, API tests. /third_party/WebKit/LayoutTests/clipboard * What’s not automated that needs manual testing? third_party/WebKit/LayoutTests/external/wpt/clipboard-apis/ * List reasons for still needing manual testing. Manual WPTs because of the permission prompt Feature-Component-Ownership Details =================================== * What is the crbug label/component for the feature? Blink>Editing * Are there any other team members or mailing lists that should be notified if issues are found? raymes@ Stability ========= * Is there a mechanism to turn off the feature if it breaks product functionality or performance? There isn't a runtime flag, but it is easy to disable the API if needed. * List UMA stats and coverage to measure stability, It’s highly recommend always adding Stability.Counts and CrashExitCodes.* to your json None. * List the names of the finch studies and the experiment groups if any. What % rollout are you requesting for each group. None * How are you monitoring the stability of the experiment groups. N/A Performance =========== * Any performance impact? Did the feature get tested on perf waterfall? No, this is a new API that only impacts the browser when it is invoked. The API is async so that large clipboard data can be processed without blocking the main UI thread.
,
Jan 5 2018
,
Jan 5 2018
cc'ing a couple WPT experts Is there any hope for automating WPT coverage for APIs (such as this one) with associated permission prompts?
,
Jan 5 2018
,
Jan 5 2018
(specifically, can https://github.com/w3c/web-platform-tests/pull/6897 help here?)
,
Jan 6 2018
,
Jan 6 2018
,
Jan 8 2018
Tested this issue on Windows-10, Ubuntu 14.04 and Mac OS 10.12.6 using chrome latest canary #65.0.3315.0. Manual Test Steps: ------------------ 1. Enabled chrome://flags '#enable-experimental-web-platform-features' and '#clipboard-content-setting' 2. Relaunched chrome 3. Navigated to https://permission.site/ 4. Clicked on 'Read text' and 'Write text' observed the Async Clipboard API got enabled successfully 5. Clicked on 'Read text (delayed)' and 'Write text (delayed)' observed Async Clipboard API got enabled successfully with slight delay 6. This API's was not getting enabled before without enabling the above flags. garykac@ Could you please confirm the above steps is the right way to check this feature manually? Please let me know if anything missing from my end. Thanks!
,
Jan 8 2018
Using https://permission.site is the easiest way to test basic functionality manually. Another way to test is to open a debug console in Chrome and do the following: (1) Navigate to an 'https' website (eg: https://permission.site) (2) Enter the following commands in the debug console: write = function() {cb = navigator.clipboard;cb.writeText("sample clipboard text").then(function(){console.log("success - copied to clipboard");}, function() {console.log("failed - not copied to clipboard");});} read = function() {navigator.clipboard.readText().then(function(x){console.log('success - copied: ' + x);}, function(x){console.log('failed');});} setTimeout(write, 5000) setTimeout(read, 5000) (3) After entering each of the setTimeout() commands, switch focus to the main page. The command will fail if the current tab doesn't have focus (and it doesn't count if the debug console has focus). (4) Verify that the text you wrote is the same text that you read.
,
Jan 8 2018
bsittler@, if the only thing blocking this is permissions, then yes, this will soon be possible to automate in web-platform-tests. The WebDriver APIs needed for it were landed in https://github.com/w3c/permissions/pull/151 and kereliuk@ will work on implementing that in ChromeDriver this quarter. See "ChromeDriver implements the permissions API" in Ecosystem Infra Q1 OKRs for details: https://docs.google.com/document/d/1ojlLDiRruI4e95Z7JQ10JQPRMiQHd_40rBkYCL6IJqw/edit?usp=sharing (public doc) The wpt issue tracking this is https://github.com/w3c/web-platform-tests/issues/5671. kereliuk@, is there also a ChromeDriver issue for it?
,
Jan 8 2018
,
Jan 8 2018
This is the ChromeDriver issue that will track progress: https://bugs.chromium.org/p/chromedriver/issues/detail?id=2212
,
Jan 8 2018
Question for original submitter: can you wait for the WPT capabilities to land and skip a manual-testing-only phase?
,
Jan 8 2018
We'd like to enable this API ASAP (M65 if possible) and the timeline for the WPT capabilities is sometime this quarter (which sounds like it could be M67-ish).
,
Jan 8 2018
Thanks! Please update the issue description to link to your test plan
,
Jan 9 2018
Tested this issue on Ubuntu 14.04, Windows-10, Mac OS 10.12.6 using chrome latest canary M65 #65.0.3315.0 & 65.0.3316.0 and Chrome-OS(Kip) device using version 65.0.3315.0/10292.0 by following the steps mentioned in the comment #9 and observed the text you wrote is the same text that you read and also the command will fail if the current tab doesn't have focus. Note: Attaching screen-cast for reference, please let me know is this is the expected behavior. Thanks!
,
Jan 10 2018
We have tested this feature on Asus Zenfone 2 Z00AD / LRX21V on latest chrome 65.0.3316.0. with the below steps. 1. Enabled chrome://flags '#enable-experimental-web-platform-features' and '#clipboard-content-setting' 2. Relaunched chrome 3. Navigated to https://permission.site/ 4. Clicked on 'Read text' and 'Write text' observed the Async Clipboard API got enabled successfully 5. Clicked on 'Read text (delayed)' and 'Write text (delayed)' observed Async Clipboard API got enabled successfully with slight delay 6. This API's was not getting enabled before without enabling the above flags. garykac@ Could you please confirm on Android devices , or any other specific to test from Android side, as mentioned in the comment # 9 ?
,
Jan 10 2018
#16 looks correct. Testing on Android is identical to other platforms (using https://permission.site and clicking on the "read text" and "write text" buttons)
,
Feb 23 2018
,
Mar 26 2018
Mac triage: assigning to garykac@ (who appears to be the owner of this anyway). |
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by dtapu...@chromium.org
, Jan 5 2018