Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(472)

Issue 1414403002: Add CommandLineArgumentParameter and use it for WebView tests (Closed)

Created:
5 years, 2 months ago by mnaganov (inactive)
Modified:
5 years, 1 month ago
Reviewers:
nyquist, jbudorick
CC:
chromium-reviews, yfriedman+watch_chromium.org, klundberg+watch_chromium.org, jbudorick+watch_chromium.org, android-webview-reviews_chromium.org, vmpstr+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@fix-cr-526885-read-nested-annotations
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add CommandLineArgumentParameter and use it for WebView tests Introduce the new parameter: CommandLineArgumentParameter and use it for running Android WebView instrumentation tests in two modes: single-process and with sandboxed renderer. The tests that currently fail in the sandboxed renderer mode are marked with empty @ParameterizedTest.Set annotation to override the superclass annotation. BUG=526885 Committed: https://crrev.com/0d1904576d3765b0eb9ad618ec58c0fd8338bbea Cr-Commit-Position: refs/heads/master@{#358459}

Patch Set 1 #

Patch Set 2 : Supposedly fixed flags issues #

Patch Set 3 : A bit different approach with flags #

Patch Set 4 : Final version #

Total comments: 17

Patch Set 5 : Comments addressed #

Patch Set 6 : More comments addressed #

Patch Set 7 : Rebased #

Patch Set 8 : Rebased with the latest flag_changer #

Total comments: 18

Patch Set 9 : Comments addressed #

Total comments: 8

Patch Set 10 : Comments addressed #

Total comments: 2

Patch Set 11 : Fixed comment #

Patch Set 12 : Make CommandLineFlags.Parameter static #

Patch Set 13 : Update tests exclusions #

Patch Set 14 : One more test needs to be excluded #

Unified diffs Side-by-side diffs Delta from patch set Stats (+382 lines, -57 lines) Patch
M android_webview/javatests/src/org/chromium/android_webview/test/AndroidScrollIntegrationTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AndroidViewIntegrationTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientFullScreenTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientGetVideoLoadingProgressViewTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientShouldInterceptRequestTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientShouldOverrideUrlLoadingTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 10 chunks +21 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsRenderTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwContentsTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +7 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwLegacyQuirksTest.java View 1 2 3 3 chunks +5 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java View 1 2 3 7 chunks +13 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwTestBase.java View 1 2 3 4 5 6 7 8 9 2 chunks +22 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/AwZoomTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/ClientOnPageFinishedTest.java View 1 2 3 3 chunks +5 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/ClientOnReceivedError2Test.java View 1 2 3 3 chunks +5 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/ClientOnReceivedHttpErrorTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/ExternalVideoSurfaceContainerTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/LoadDataWithBaseUrlTest.java View 1 2 3 3 chunks +5 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/MultipleVideosTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/PopupWindowTest.java View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/VisualStateTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +3 lines, -0 lines 0 comments Download
M android_webview/javatests/src/org/chromium/android_webview/test/WebKitHitTestTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +3 lines, -0 lines 0 comments Download
M base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java View 1 2 3 4 5 6 7 8 9 10 2 chunks +14 lines, -0 lines 0 comments Download
M base/test/android/javatests/src/org/chromium/base/test/util/CommandLineFlags.java View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +35 lines, -0 lines 0 comments Download
M build/android/pylib/flag_changer.py View 1 2 3 4 5 6 7 2 chunks +19 lines, -4 lines 0 comments Download
M build/android/pylib/instrumentation/instrumentation_test_instance.py View 1 2 3 4 5 6 7 8 9 6 chunks +69 lines, -1 line 0 comments Download
M build/android/pylib/instrumentation/test_runner.py View 1 2 3 4 5 6 7 8 9 7 chunks +77 lines, -42 lines 0 comments Download
M build/android/pylib/local/device/local_device_instrumentation_test_run.py View 1 2 3 4 5 6 7 8 6 chunks +43 lines, -10 lines 0 comments Download

Messages

Total messages: 44 (15 generated)
mnaganov (inactive)
Hi John, Finally, we are getting close to our aim! Please tell me what do ...
5 years, 1 month ago (2015-10-26 22:55:15 UTC) #3
jbudorick
https://codereview.chromium.org/1414403002/diff/60001/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java File android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java (right): https://codereview.chromium.org/1414403002/diff/60001/android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java#newcode18 android_webview/javatests/src/org/chromium/android_webview/test/AwContentsClientOnScaleChangedTest.java:18: @ParameterizedTest.Set What exactly are these doing...? https://codereview.chromium.org/1414403002/diff/60001/base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java File base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java ...
5 years, 1 month ago (2015-10-27 16:14:37 UTC) #4
mnaganov (inactive)
Thanks for brilliant comments, but I disagree with some of them, please see my replies. ...
5 years, 1 month ago (2015-10-27 23:53:30 UTC) #5
jbudorick
https://codereview.chromium.org/1414403002/diff/60001/base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java File base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java (right): https://codereview.chromium.org/1414403002/diff/60001/base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java#newcode34 base/test/android/javatests/src/org/chromium/base/test/util/parameter/parameters/CommandLineArgumentParameter.java:34: public class CommandLineArgumentParameter extends BaseParameter { On 2015/10/27 23:53:30, ...
5 years, 1 month ago (2015-10-28 16:36:35 UTC) #6
mnaganov (inactive)
John, I have addressed the two remaining comments. One thing I'm not sure about is ...
5 years, 1 month ago (2015-10-28 20:21:33 UTC) #7
mnaganov (inactive)
John, a friendly ping -- could you please take a look sometime today?
5 years, 1 month ago (2015-10-30 16:13:52 UTC) #8
jbudorick
On 2015/10/30 16:13:52, mnaganov wrote: > John, a friendly ping -- could you please take ...
5 years, 1 month ago (2015-10-30 16:14:57 UTC) #9
jbudorick
I'm concerned that this will only work on local devices -- i.e., it won't work ...
5 years, 1 month ago (2015-11-02 14:49:46 UTC) #10
mnaganov (inactive)
> Both of those are pretty tricky, though, and I'm not sure they're necessary for ...
5 years, 1 month ago (2015-11-02 19:03:54 UTC) #11
mnaganov (inactive)
Friendly ping!
5 years, 1 month ago (2015-11-04 16:19:11 UTC) #12
jbudorick
lgtm w/ nits Thanks for the work (and patience) on this! :) +sean fyi https://codereview.chromium.org/1414403002/diff/160001/build/android/pylib/instrumentation/instrumentation_test_instance.py ...
5 years, 1 month ago (2015-11-04 16:34:34 UTC) #13
sean
It's nice to see this being used. Thanks for adding me, John. :)
5 years, 1 month ago (2015-11-04 16:53:13 UTC) #14
mnaganov (inactive)
Thanks, John! https://codereview.chromium.org/1414403002/diff/160001/build/android/pylib/instrumentation/instrumentation_test_instance.py File build/android/pylib/instrumentation/instrumentation_test_instance.py (right): https://codereview.chromium.org/1414403002/diff/160001/build/android/pylib/instrumentation/instrumentation_test_instance.py#newcode11 build/android/pylib/instrumentation/instrumentation_test_instance.py:11: from collections import namedtuple On 2015/11/04 16:34:34, ...
5 years, 1 month ago (2015-11-04 17:51:04 UTC) #15
mnaganov (inactive)
yfriedman@: Please review changes in base/test/android/
5 years, 1 month ago (2015-11-04 17:53:10 UTC) #17
mnaganov (inactive)
Yaron seems to be on some week-long event, so switching to Tommy. nyquist@: PTAL base/test/android/
5 years, 1 month ago (2015-11-04 22:43:54 UTC) #19
nyquist
lgtm https://codereview.chromium.org/1414403002/diff/180001/base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java File base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java (right): https://codereview.chromium.org/1414403002/diff/180001/base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java#newcode160 base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java:160: // Remove all @ParameterizedTests that contain CommandLineArgumentParameter -- ...
5 years, 1 month ago (2015-11-05 23:52:52 UTC) #20
mnaganov (inactive)
Thanks, Tommy! https://codereview.chromium.org/1414403002/diff/180001/base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java File base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java (right): https://codereview.chromium.org/1414403002/diff/180001/base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java#newcode160 base/test/android/javatests/src/org/chromium/base/test/BaseTestResult.java:160: // Remove all @ParameterizedTests that contain CommandLineArgumentParameter ...
5 years, 1 month ago (2015-11-06 00:30:34 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414403002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414403002/200001
5 years, 1 month ago (2015-11-06 00:32:28 UTC) #24
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg_recipe on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg_recipe/builds/142880)
5 years, 1 month ago (2015-11-06 01:10:10 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414403002/220001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414403002/220001
5 years, 1 month ago (2015-11-06 01:33:17 UTC) #29
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/92347)
5 years, 1 month ago (2015-11-06 04:25:46 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414403002/50026 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414403002/50026
5 years, 1 month ago (2015-11-06 17:44:40 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414403002/250001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414403002/250001
5 years, 1 month ago (2015-11-06 21:32:19 UTC) #38
commit-bot: I haz the power
Committed patchset #14 (id:250001)
5 years, 1 month ago (2015-11-07 00:11:51 UTC) #39
commit-bot: I haz the power
Patchset 14 (id:??) landed as https://crrev.com/0d1904576d3765b0eb9ad618ec58c0fd8338bbea Cr-Commit-Position: refs/heads/master@{#358459}
5 years, 1 month ago (2015-11-07 00:13:03 UTC) #40
jbudorick
On 2015/11/07 00:13:03, commit-bot: I haz the power wrote: > Patchset 14 (id:??) landed as ...
5 years, 1 month ago (2015-11-07 03:47:38 UTC) #41
mnaganov (inactive)
On 2015/11/07 03:47:38, jbudorick wrote: > On 2015/11/07 00:13:03, commit-bot: I haz the power wrote: ...
5 years, 1 month ago (2015-11-07 05:23:02 UTC) #42
boliu
On 2015/11/07 05:23:02, mnaganov wrote: > On 2015/11/07 03:47:38, jbudorick wrote: > > On 2015/11/07 ...
5 years, 1 month ago (2015-11-07 05:37:20 UTC) #43
mnaganov (inactive)
5 years, 1 month ago (2015-11-09 18:13:18 UTC) #44
Message was sent while issue was closed.
On 2015/11/07 05:37:20, boliu wrote:
> On 2015/11/07 05:23:02, mnaganov wrote:
> > On 2015/11/07 03:47:38, jbudorick wrote:
> > > On 2015/11/07 00:13:03, commit-bot: I haz the power wrote:
> > > > Patchset 14 (id:??) landed as
> > > > https://crrev.com/0d1904576d3765b0eb9ad618ec58c0fd8338bbea
> > > > Cr-Commit-Position: refs/heads/master@{#358459}
> > > 
> > > This appears to have added multiple minutes to CQ cycle time. I'm going to
> > look
> > > at our metrics on Monday and may wind up (at least partially) reverting
this
> > for
> > > the time being.
> > 
> > Well, it used to take about 4 minutes for WebView tests:
> > 
> > Instrumentation test AndroidWebViewTest (with patch) Instrumentation test
> > AndroidWebViewTest (with patch) ( 3 mins, 50 secs )
> > 
> > Now it takes a couple of minutes more:
> > 
> > Instrumentation test AndroidWebViewTest (with patch) Instrumentation test
> > AndroidWebViewTest (with patch) ( 6 mins, 31 secs )
> > 
> > That's what I would expect as we basically doubled the amount of tests we
run.
> > 
> > Running the tests is in the new mode is very important for us. And we can't
> turn
> > off the old mode yet.
> > 
> > If this time increase bothers you very much, let's think what else we can do
> in
> > order to address this issue.
> 
> Just curious, what percentage of tests can run and pass with multiprocess
today?
>

Didn't count, but I'm hoping that with the new synchronous compositor,
only the tests that read back the screen contents, or test inline video
will be excluded. I will verify that soon.
 
> For most tests, if there is only capacity to running in one of multiprocess or
> in-process, the right trade off is probably multiprocess?
>

That will be scary, because single process is not an "official" mode for
anyone except WebView, so if even us would not be testing it, then all
the issues specific to it will be discovered in production only.
 
> Probably worth looking into things like crbug.com/528037 first though.

Powered by Google App Engine
This is Rietveld 408576698