InputEvent: Re-write testRunner tests into manual tests and automating through GPU benchmark extension |
|||||||||
Issue descriptionCurrently all tests for InputEvent are written in WPT format but using testRunner/eventSender. We need to: 1. Turn them into manual tests 2. Add keyboard testing capability to GPU benchmark extension 3. Automating the manual tests 4. Upload manual tests to w3c/WPT
,
Mar 15 2017
,
Apr 3 2017
,
Apr 3 2017
Is there a separate bug for creating automated tests for InputEvent? What testing infrastructure is missing to make that possible?
,
Apr 3 2017
Re #4: I'm not sure if I fully understood your query, but the current status is: * We have layout tests located in https://cs.chromium.org/chromium/src/third_party/WebKit/LayoutTests/fast/events/inputevents/ * Those tests require simulation for trusted keyboard, IME and spellcheck input, e.g. * eventSender.keyDown() * textInputController.setComposition() * testRunner.execCommand() * internals.setMarker()/replaceMisspelled() * It's not easy to simulate these trusted input through 'testharness.js' * AKAIK WebDriver doesn't have good support for keyboard simulation either A possible solution is to re-write those layout tests into manual WPT, which means: * Other browsers will be able to run these tests manually * Chrome can have some separate scripts to inject trusted input, still through eventSender/textInputController/testRunner/internals API I didn't prioritize this before because I didn't see a lot benefits, but I might be wrong.
,
Apr 4 2017
nzolghadr@, will everything in #5 be addressed by your input automation plan, or which bits will be left?
,
Apr 4 2017
To be clear, we hope that everything will be possible to test using web-platform-tests. Lots of things currently aren't, so I'm trying to understand why and if there's anyone working on unblocking those things.
,
Apr 4 2017
From the API point of view, I assume we can use the same proposed API in wpt to inject keyboard inputs as well. Like adding an action for keydown and one for keyup and that should be it. Chong would that suffice? https://navidz.github.io/web-input-automation/ So the we will have something like: { "source": "keyboard", "actions": [ { "name": "keydown" , "key": "key_identifier1"}, { "name": "keyup" , "key": "key_identifier1"}, ] } Regarding the GPU benchmarnking, as Chong mentioned in the original issue description GPU benchmarking doesn't support injecting keyboard input yet. So even if I manage to get that API in wpt we still need to implement the GPU benchmarnking side of it to be able to automate these keyboard tests on our bots. We are going to work on adding the keyboard input to GPU benchmarking this quarter while I'm trying to push the API to wpt.
,
Jun 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ff45c14fe5518b3c732c5e797118f9c0e0a69cf8 commit ff45c14fe5518b3c732c5e797118f9c0e0a69cf8 Author: chongz <chongz@chromium.org> Date: Thu Jun 01 19:03:41 2017 [WPT] Add automated manual test for InputEvent typing Passed on Chrome and Safari. BUG=652439 Review-Url: https://codereview.chromium.org/2919603002 Cr-Commit-Position: refs/heads/master@{#476377} [add] https://crrev.com/ff45c14fe5518b3c732c5e797118f9c0e0a69cf8/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-typing-data-manual.html [add] https://crrev.com/ff45c14fe5518b3c732c5e797118f9c0e0a69cf8/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/input-events-typing-data-manual-automation.js [add] https://crrev.com/ff45c14fe5518b3c732c5e797118f9c0e0a69cf8/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/inputevent_common_input.js [modify] https://crrev.com/ff45c14fe5518b3c732c5e797118f9c0e0a69cf8/third_party/WebKit/LayoutTests/resources/testharnessreport.js
,
Sep 15 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9e1bf16a54295bcc2aa6d96031640ac336b06cf2 commit 9e1bf16a54295bcc2aa6d96031640ac336b06cf2 Author: Chong Zhang <chongz@chromium.org> Date: Fri Sep 15 17:29:29 2017 [InputEvent] Rewrite Cut/Paste and execCommand tests into WPT * 'input-events-cut-paste-manual.html' passes on both Chrome and Safari. * 'input-events-exec-command.html' fails on Safari: https://bugs.webkit.org/show_bug.cgi?id=165197 Bug: 652439 Change-Id: I7303e2234afe72d74f451143ed206bdde105467c Reviewed-on: https://chromium-review.googlesource.com/664277 Commit-Queue: Chong Zhang <chongz@chromium.org> Reviewed-by: Philip Jägenstedt <foolip@chromium.org> Cr-Commit-Position: refs/heads/master@{#502295} [modify] https://crrev.com/9e1bf16a54295bcc2aa6d96031640ac336b06cf2/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG [add] https://crrev.com/9e1bf16a54295bcc2aa6d96031640ac336b06cf2/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-cut-paste-manual.html [rename] https://crrev.com/9e1bf16a54295bcc2aa6d96031640ac336b06cf2/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-exec-command.html [add] https://crrev.com/9e1bf16a54295bcc2aa6d96031640ac336b06cf2/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/input-events-cut-paste-manual-automation.js [modify] https://crrev.com/9e1bf16a54295bcc2aa6d96031640ac336b06cf2/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/inputevent_common_input.js [delete] https://crrev.com/258dfd85e3f0d0cfeb6c168b4324bf0a02388078/third_party/WebKit/LayoutTests/fast/events/inputevents/inputevent-cut-paste.html
,
Sep 15 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e466de999e5626081881a727ecf147fc1743532e commit e466de999e5626081881a727ecf147fc1743532e Author: Chong Zhang <chongz@chromium.org> Date: Fri Sep 15 19:07:21 2017 [InputEvent] Rewrite typing and getTargetRanges() tests into WPT * 'input-events-typing-manual.html' passes on both Chrome and Safari. * 'input-events-get-target-ranges-manual.html' fails on Safari. Bug: 652439 Change-Id: I0d2fd6281e2ed615890278b7f6417ba41f3ed22a Reviewed-on: https://chromium-review.googlesource.com/666197 Commit-Queue: Chong Zhang <chongz@chromium.org> Reviewed-by: Philip Jägenstedt <foolip@chromium.org> Cr-Commit-Position: refs/heads/master@{#502325} [modify] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG [add] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-get-target-ranges-manual.html [delete] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-typing-data-manual.html [add] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/external/wpt/input-events/input-events-typing-manual.html [add] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/input-events-get-target-ranges-manual-automation.js [rename] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/input-events-typing-manual-automation.js [modify] https://crrev.com/e466de999e5626081881a727ecf147fc1743532e/third_party/WebKit/LayoutTests/external/wpt_automation/input-events/inputevent_common_input.js [delete] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-order-typing-command.html [delete] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-ranges.html [delete] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/third_party/WebKit/LayoutTests/fast/events/inputevents/inputevent-data-keyboard.html
,
Oct 10
Mark as un-triaged for input-dev to assign priorities.
,
Oct 11
,
Oct 11
|
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by chongz@chromium.org
, Mar 15 2017