0
Commit Graph

112 Commits

Author SHA1 Message Date
Ben Pastene
b30c66e969 chromeos: Add a doc for debugging test failures on Chrome OS.
Add a link to that doc in Tast test failure log snippets.

Will make failure snippets look like:
https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8904924613768986736/+/steps/chrome_all_tast_tests__with_patch__on_ChromeOS/0/logs/Deterministic_failure:_session.LogoutCleanup__status_FAILURE_/0

Bug: 923426
Change-Id: Id7d19fa94126a013763e6671cfc0cd8f6263c71b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1759234
Commit-Queue: Ben Pastene <bpastene@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
Cr-Commit-Position: refs/heads/master@{#692275}
2019-08-30 23:25:10 +00:00
Yuke Liao
78aa43b208 [code coverage] Update per-cl coverage documentation
This CL updates the documentation for per-cl coverage.

Bug: 930364
Change-Id: Id22ee2f22bd8e170253af7d82b86fa7b9bd766d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1774907
Reviewed-by: Erik Staab <estaab@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#691677}
2019-08-29 16:58:17 +00:00
Lei Lei
75b4ff79d1 Add the high level doc about testing in Chromium.
Change-Id: I096f86553aa1c173c03f2e103a8c199db94d7d3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1711101
Reviewed-by: Caleb Rouleau <crouleau@chromium.org>
Reviewed-by: Erik Staab <estaab@chromium.org>
Commit-Queue: Lei Lei <leilei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#689108}
2019-08-21 19:03:54 +00:00
Yuke Liao
03c644076d [code coverage] Update code coverage component references
The Monorail component for code coverage was renamed from:
Tools>CodeCoverage to Infra>Test>CodeCoverage, and this CL updates the
references.

Change-Id: I886422c5b8f839570ade415354fe2c122ee35ff7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1726371
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#682373}
2019-07-30 18:33:40 +00:00
Yuke Liao
adeb4912b0 [code coverage] Add life_of_increasing_code_coverage.md
This CL adds documentation to guide how to use code coverage
information to improve tests.

Bug: 974379
Change-Id: I6526ea70f3e293c3aeac086097f8c90308b69515
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1707248
Reviewed-by: Erik Staab <estaab@chromium.org>
Reviewed-by: Yun Liu <yliuyliu@google.com>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#679704}
2019-07-22 21:08:24 +00:00
Robert Ma
0d0b664df7 [docs] Document how to debug WPT in content_shell
This should make the workflow of attaching devtools to content_shell to
debug WPT much clearer.

Change-Id: I86a071332c9e4405efbd4725c59d6f172201bc0f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1709329
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Commit-Queue: Ian Clelland <iclelland@chromium.org>
Auto-Submit: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#678786}
2019-07-18 19:12:00 +00:00
Eric Foo
31267c4dc8 OWNERS files updated with latest COMPONENT and TEAMS.
This is CL is generated by a script. Data is pulled from
review conducted in Q2 2019. See https://tinyurl.com/yxau5sc4
for context.

Please review and LGTM before July 16th or the CL will be
submitted as-is.

NOTRY=true

Bug: 977050
Change-Id: I1770239e09a71381d80f3893ce27096b81513056
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1700822
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Auto-Submit: Eric Foo <efoo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#677831}
2019-07-16 17:02:33 +00:00
Staphany Park
4b66843ede Fix typo in testing documentation.
Change-Id: Ic0a245f29020ec2c2b8679ed56f285312312d126
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1696834
Commit-Queue: Victor Costan <pwnall@chromium.org>
Auto-Submit: Staphany Park <staphany@chromium.org>
Reviewed-by: Victor Costan <pwnall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#676313}
2019-07-11 07:28:33 +00:00
Yuke Liao
04efa97ad6 [code coverage] Update doc references to clang_coverage recipe module
The clang_coverage recipe module was renamed to code_coverage in
https://chromium-review.googlesource.com/c/chromium/tools/build/+/1670914.
This CL updates the references at chromium/src side accordingly.

Bug: 977032
Change-Id: I2059b978cbc75d3f8621e7c14880ee6d40a92f85
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1669984
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#672657}
2019-06-26 21:14:07 +00:00
Yuke Liao
43bbbcd535 [code coverage] Update documentation for code coverage
This CL updates the documentation for code coverage.

TBR=jbudorick@chromium.org

Bug: 974379
Change-Id: If9abde5ce40793a7a4d265703fb695126d8f0e56
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1663371
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Erik Staab <estaab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#671397}
2019-06-21 19:34:50 +00:00
A Olsen
fdd20c8546 Addressing Lutz' comments in "Writing a JS unittest" doc.
A rendering of this doc (CSS styles may differ) is available internally
here:

https://g3doc.corp.google.com/experimental/users/olsen/g3doc/writing_js_unit_test.md?cl=240342366

Change-Id: I35ee7a81283b9adf7af3f20d20c2e91ecd80b71a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1655529
Commit-Queue: A Olsen <olsen@chromium.org>
Reviewed-by: Lutz Justen <ljusten@chromium.org>
Cr-Commit-Position: refs/heads/master@{#669154}
2019-06-14 08:00:25 +00:00
A Olsen
8f1585c8f1 Added documentation for writing JS unit tests -
tests written in JS, for testing code written in JS.

Markdown is rendered here (in case gerrit doesn't render it):
https://g3doc.corp.google.com/experimental/users/olsen/g3doc/writing_js_unit_test.md?cl=240342366

Change-Id: I996e2fd559e9c637edbf22211c28bb3e54948bad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1648158
Commit-Queue: A Olsen <olsen@chromium.org>
Reviewed-by: Alexander Hendrich <hendrich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#667065}
2019-06-07 09:51:14 +00:00
Luke Zielinski
64ff949844 Link to instructions for adding new testdriver API for WPT tests
Change-Id: I5f729822140f544717432aa0b45c56dfdf30b9ba
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1636787
Commit-Queue: Luke Z <lpz@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#664792}
2019-05-30 17:42:29 +00:00
Andrew Grieve
db31fb9af9 android_test_instructions.md: Minor edits & fix broken links.
Change-Id: I788538d4a9036dae160ff5e2cb5a5bd2a1ad068d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1622898
Auto-Submit: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662809}
2019-05-23 20:53:48 +00:00
Caleb Rouleau
caca09d33e [Test Results Format doc] Add shard as optional per-test field.
Bug: 960951
Change-Id: I869bc9c675f2f2e5e48d7fe3400735d5291eddbe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1614322
Commit-Queue: Caleb Rouleau <crouleau@chromium.org>
Auto-Submit: Caleb Rouleau <crouleau@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#660577}
2019-05-16 21:50:32 +00:00
Jochen Eisinger
b003ef45fa Add content_shell_crash_test to Android
- add support for resolving shared library deps on android
- add work around for missing local build id on android
- use devil.py to access the android device
- hook script up to swarming on android

Bug: 688737, 849904
Change-Id: I9ff2e3ae1fed279fef83a44b07c693c338b8ee13
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1583715
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Ben Pastene <bpastene@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#657138}
2019-05-07 06:10:03 +00:00
Lei Lei
8aa9db627d Move testing related docs into testing/ folder and update doc index.
This CL moves the following md files:
android_test_instructions.md
ipc_fuzzer.md
linux_running_asan_tests.md
test_descriptions.md
web_tests_linux.md

Change-Id: I88dd14f5c98b79a23f5607dbddd1e5b36eb41812
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1578589
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Lei Lei <leilei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#655750}
2019-05-01 21:08:01 +00:00
Robert Ma
c31beaebb6 Remove mentions of Travis in the wpt GitHub repo
Update docs & the comment posted by the exporter to avoid confusion.

Change-Id: I6eab5a9e88f61a99a50dd91d9d6ef3a39105db5f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1589058
Auto-Submit: Robert Ma <robertma@chromium.org>
Reviewed-by: Luke Bj <lukebjerring@chromium.org>
Commit-Queue: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#655220}
2019-04-30 14:46:46 +00:00
Rakib M. Hasan
7855a65c72 Remove test_name_prefix from the results_merge.py script
This field has been moved from the top level to the metadata field
in the JSON results. The field has also been removed from the JSON
results documentation.

Bug: None
Change-Id: I7da08bcaf71c48d52b49f9cc7595cf551ab94f3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1565371
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Rakib Hasan <rmhasan@google.com>
Cr-Commit-Position: refs/heads/master@{#650159}
2019-04-12 01:29:56 +00:00
Rakib M. Hasan
5cfefc7995 Relands "Adds the metadata optional field to the standard JSON results"
This CL had to be reverted because GPU bots were failing because the
results_merger.py script could not handle the test_name_prefix field
that was still getting populated in the JSON results. This CL will
add the metadata field along side the test_name_prefix field in the
Optional fields list in the results_merger.py script. It also removes
the checking of test_name_prefix in the gpu unit tests because the
test_name_prefix field will be removed from the top level of the
results in a future CL.

Bug: chromium:698902
Change-Id: I4867e60ca5a97d426d5fd1a4de08e26c14d326ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1559492
Commit-Queue: Rakib Hasan <rmhasan@google.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#649665}
2019-04-10 21:51:51 +00:00
Stephen Martinis
67cb9c0e73 Document the 'flag_name' json test results field
Change-Id: Ic23a007188bcda0775e76633e72fc4f2047602b1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1539180
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#649217}
2019-04-09 19:14:08 +00:00
Rakib Hasan
164b660fdd Revert "Adds the metadata optional field to the standard JSON results"
This reverts commit 7c7d23256a.

Reason for revert: We reverted the removal of the test_name_prefix
top level field in crrev.com/c/1558856. So for the JSON results to be properly
merged, we need to re-add the test_name_prefix field to the
results_merger.py script.

Original change's description:
> Adds the metadata optional field to the standard JSON results
>
> A test runner may have several pieces of metadata. Instead of putting all
> of them in the top level, they can be put in the metadata field. I
> also removed the test name prefix, tags and expectations files fields
> from the top level. These fields will be put in the metadata field.
>
> Bug: chromium:698902
> Change-Id: I97973e4aed4cb2fe3761e047e48ce455422d300e
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1552490
> Reviewed-by: Kenneth Russell <kbr@chromium.org>
> Reviewed-by: Stephen Martinis <martiniss@chromium.org>
> Commit-Queue: Rakib Hasan <rmhasan@google.com>
> Cr-Commit-Position: refs/heads/master@{#648900}

TBR=kbr@chromium.org,martiniss@chromium.org,rmhasan@google.com

Change-Id: Ic1ccc87851fb10540ac505789fd2d2a0be3ecb24
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:698902
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1559246
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#648943}
2019-04-09 00:29:45 +00:00
Rakib M. Hasan
7c7d23256a Adds the metadata optional field to the standard JSON results
A test runner may have several pieces of metadata. Instead of putting all
of them in the top level, they can be put in the metadata field. I
also removed the test name prefix, tags and expectations files fields
from the top level. These fields will be put in the metadata field.

Bug: chromium:698902
Change-Id: I97973e4aed4cb2fe3761e047e48ce455422d300e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1552490
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
Commit-Queue: Rakib Hasan <rmhasan@google.com>
Cr-Commit-Position: refs/heads/master@{#648900}
2019-04-08 22:31:08 +00:00
jonross
2618570e69 Non-headless Fuzzy Blink Web Tests
This is a split of a previous review: https://chromium-review.googlesource.com/c/chromium/src/+/1500784

There we discussed both the non-headless content_shell, as well as fuzzy pixel
diffs. However that review also had testing infrastructure changes which we are
blocked on landing.

This change pulls out the portion required for running SkiaRenderer and Vulkan
blink_web_tests. So that the team can run them locally.

content_shell defaults to a headless state when running the blink_web_tests.
Which forces Chrome to perform software rendering. There is currently no Swift
Shader equivalent for Vulkan. So we cannot use this for testing.

This change introduces a new Chrome switch "--disable-headless-mode" which
prevents the content_shell from triggering the headless state.

Actual GPU output introduces a variance from the baseline expectation files. So
this change also updates image_diff to have a new flag "--fuzzy-diff" which
allows it to have a tolerance in pixel differences. A corresponding
"--fuzzy-diff" flag has been added for blink_web_tests to be able to
trigger this.

I've also updated documentation of blink_web_tests based on findings
while writting this.

A follow up change will land tests on the Chromium GPU.FYI bots.

Bug: 925161
Change-Id: Ifd3837ec48a32bbdc776433e8c543138dde7418d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1553280
Commit-Queue: Jonathan Ross <jonross@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#648767}
2019-04-08 18:54:10 +00:00
Rakib M. Hasan
92075cd635 Adds new optional fields to the JSON results merger script
These new fields can be useful for debugging regressions due to
invalid test expectations. It also updates the JSON results documentation
to include the new fields as well as the optional test_name_prefix field
which was added in a previous CL.

Bug: chromium:698902
Change-Id: Icc0edd59a2a3b585fb793a70355ee585cac28fad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1546257
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Rakib Hasan <rmhasan@google.com>
Cr-Commit-Position: refs/heads/master@{#646000}
2019-03-29 23:27:39 +00:00
Xianzhu Wang
0a37e9d41f Document more topics about running/debugging Content Shell
- The protocol mode
- Running HTTP web tests in Content Shell
- Running WPT tests in Content Shell
- Debugging with --single-process
- Debugging web tests
- Some corrections

Change-Id: I1d23d0f8a75b9d597edab153e4ec0ea9cdb7cb67
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1541863
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#645002}
2019-03-27 21:27:29 +00:00
Joshua Peraza
6f96b9d264 Add Android support to breakpad_integration_test.py and update docs
Bug: crashpad:30
Change-Id: Id8ecfacafb2ea69fc254157c0ea2c9600440693f
Reviewed-on: https://chromium-review.googlesource.com/c/1157685
Commit-Queue: Joshua Peraza <jperaza@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#631268}
2019-02-12 16:55:14 +00:00
Darwin Huang
a8cd381885 Docs: Fixing some markdown docs issues
- Fixing broken links.
- Fixed spelling.

Bug: 896479
Change-Id: Id063538cbade42363eebf327afa0b6118123558f
Reviewed-on: https://chromium-review.googlesource.com/c/1401510
Commit-Queue: Victor Costan <pwnall@chromium.org>
Reviewed-by: Victor Costan <pwnall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#621539}
2019-01-10 11:05:10 +00:00
Kent Tamura
59ffb020bd Update "LayoutTests" / "layout test" in docs/*.md.
This CL renames the following md files:
 - layout_tests_linux -> web_tests_linux.md
 - how_to_extend_layout_test_framework.md ->
   how_to_extend_web_test_framework.md
 - testing/layout_test_baseline_fallback.md ->
   testing/web_test_baseline_fallback.md
 - testing/layout_test_expectations.md -> testing/web_test_expectations.md
 - testing/layout_tests.md -> testing/web_tests.md
 - testing/layout_tests_in_content_shell.md ->
   testing/web_tests_in_content_shell.md
 - testing/layout_tests_tips.md -> testing/web_tests_tips.md
 - testing/layout_tests_with_manual_fallback.md ->
   testing/web_tests_with_manual_fallback.md
 - testing/writing_layout_tests -> testing/writing_web_tests.md

No-Try: true
Change-Id: Ied34815c92e449888b20818540a5ed0a76107bd1
Bug: 843412
Reviewed-on: https://chromium-review.googlesource.com/c/1350559
Commit-Queue: Kent Tamura <tkent@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611024}
2018-11-27 05:30:56 +00:00
kyle Ju
8f7d38df74 Correct the directory in the layout-test build instruction
Change-Id: I80c5bea68c43493acb0b6cb95b9263adf51f856a
Reviewed-on: https://chromium-review.googlesource.com/c/1351209
Commit-Queue: Robert Ma <robertma@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610859}
2018-11-26 16:51:22 +00:00
Xianzhu Wang
4bbcebe042 [run_web_tests] Let reftest's text baseline use the common rule
Before crrev.com/c/1277654 when we created text results for ref tests
most of which don't need text baselines, we let reftest's text baseline
be optional, so that most reftests can ignore the text results, while
a few of them for which the text result is significant can still check
the text results.

After crrev.com/1277654, reftests no longer produce text results thus
don't need text baseline, unless a test explicitly produces text result.
In this case, we can just let the test determine if the text baseline
is needed, instead of run_web_tests.py checking existance of the
text baselines.

About existing reftests producing text results but without text
baselines:
1. for tests that don't actually need text results, modify them so that
   they no longer produce text results. This includes some tests
   previously calling testRunner.dumpAsTextWithPixelResults() just
   to dump pixel results.
2. for tests that produce meaningful text results, create text
   baselines.
3. for tests that don't produce text results intentionally, but the
   text results are created because of some console messages, etc.
   also create text baselines. There are several cases:
 a) the message shows the purpose of the test, e.g. intentionally
    testing with some invalid values. New text baselines are created
    in this CL.
 b) the message shows some problem of the test that doesn't need to
    fix for now, e.g. the test is using some deprecating API. New
    baselines are created in this CL.
 c) the message indicates some fatal bug in the test, e.g. using
    undefined variable, invalid JavaScript grammar, etc. The bugs are
    fixed in this CL.

Bug: 703899
Change-Id: I82a6b25c61d1fb794840fdaa0da248909a690592
Reviewed-on: https://chromium-review.googlesource.com/c/1298120
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604116}
2018-10-31 02:21:46 +00:00
Mason Freed
c41b2d0829 Enable display compositor pixel dumps by default.
SHERIFFS: PLEASE DO NOT REVERT THIS CL BECAUSE OF A SMALL AMOUNT OF LAYOUT
TEST FLAKINESS. If a few layout tests begin to show flakiness after this CL
lands, please add them to TestExpectations and email me (masonfreed@) to
investigate. Though I tried to identify all potentially flaky tests, a few
may have slipped through.

With this CL, the --enable-display-compositor-pixel-dump flag becomes the default
for content_shell. With this flag in place, layout test pixel dumps are performed
from the browser side, instead of from the renderer side. Note that to avoid a
significant amount of layout test flakiness, another change was also made to
not add the --run-all-compositor-stages-before-draw flag by default. There is
a bug (crbug.com/894613) tracking that problem separately.

With the flip of this switch, several modifications had to be made to the
TestExpectations file. First, there are a number of tests that change their
appearance slightly when being captured from the browser, and these tests need
to be rebaselined. These are summarized below, and will be rebaselined as a
separate CL, once this one lands and has had time to stabilize.

These bugs track the items added to TestExpectations:
 - crbug.com/887140: HDR support
 - crbug.com/881040: Media controls now contain an overflow menu.
 - crbug.com/667551: A bunch of tests are listed under this bug, and just
                     require rebaselining to fix non-material single-pixel
                     antialiasing failures.
 - crbug.com/891427: These either start failing, or become flaky, when the
                     --enable-display-compositor-pixel-dump flag is enabled.
                     They need to be debugged prior to re-enabling.
 - crbug.com/895556: These tests double their background size when the flag
                     is enabled. They need to be fixed or rebaselined.

Bug: 667551, 891427, 881040, 887140, 894613, 895556
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: I46946e6377f659c9dedc0dfaa20e7658e8cc519d
Reviewed-on: https://chromium-review.googlesource.com/c/1213864
Commit-Queue: Mason Freed <masonfreed@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Cr-Commit-Position: refs/heads/master@{#603127}
2018-10-26 17:20:21 +00:00
Xianzhu Wang
6e84f09970 [run_web_tests] Replace ImageFirst feature with a better solution
Now for tests that don't call any dumpAsXXX methods, they by default
generate pixel results only, and run_web_tests.py just check their
pixel results against the corresponding pixel baselines only.

Provide testRunner.dumpAsLayout() and dumpAsLayoutWithPixelResults()
for tests that do need to dump the layout tree.

We still dump layout tree when running such tests in content_shell
--run-web-tests command line (instead of running from run_web_tests.py
in protocol mode).

Changes to layout tests and their expectations:
- Use testRunner.dumpAsLayoutWithPixelResults() or dumpAsLayout()
  in some tests that still requires the layout dump:
  - editing/ tests need layout dump to show the caret position.
  - two printing/ tests need layout dump to show how the bug is
    fixed.
  In the future, we may just get rid of layout dumps if it's
  feasible.
- Remove testRunner.dumpAsTextWithPixelResults() from some tests
  which used the function just to suppress layout output. They didn't
  actually want text output but we hadn't had a way to dump image only
  until we had the ImageFirst feature.
- Previous platform-specific -expected.txt for tests under previous
  ImageFirst directories are removed and the common baselines are
  created because the baselines are no longer platform-specific without
  the layout dump.

Extra -expected.txt baselines are not deleted in this CL. Will
follow-up in https://chromium-review.googlesource.com/c/chromium/src/+/1286894.

Bug: 703899
Cq-Include-Trybots: luci.chromium.try:linux-blink-gen-property-trees;luci.chromium.try:linux_layout_tests_slimming_paint_v2;luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Ifcf7fea90684e133b4222909ee508469d0c985e0
Reviewed-on: https://chromium-review.googlesource.com/c/1277654
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602161}
2018-10-23 23:07:55 +00:00
Xianzhu Wang
4ea14eb904 [run_web_tests] Remove --pixel-test/--pixel-tests option
Whether a test produces pixel results should be decided by the test
itself. Controlling that outside of the test is unnecessary. Removing
it can greatly simplify our code.

This is a preparation to replace the ImageFirst feature with a better
solution (https://chromium-review.googlesource.com/c/chromium/src/+/1277654).

TBR=mkwst@chromium.org  # For simple passive changes

Bug: 703899
Change-Id: Ia04b622e24f88cf2408f20e5e6888d933e34dac5
Reviewed-on: https://chromium-review.googlesource.com/c/1277820
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602139}
2018-10-23 22:29:13 +00:00
Mason Freed
b085562260 [CI] Adding full lifecycle/raster during autoscroll/animation tests
Previous to this CL, these autoscroll/animation tests passed only because there
is a default surface deadline (typically 4 frames) in place. Surface activation
does not happen automatically, because in layout test mode, rasterization is not
performed until the very end of the test, for image capture. For the tests in
question, that deadline was previously always being hit, causing the surface to
be activated, triggering the monitored scroll events and passing the test.

When the --enable-display-compositor-pixel-dump flag is enabled, however, the
default surface activation deadline is changed to be infinite (no deadline). As
a result, all such autoscroll/animation tests fail.

With this CL, those tests that looked at animation behavior have been modified
to call a new continuouslyRunAnimations() javascript method, which sets a flag
that causes full rasterization to be included in the lifecycle update that was
already taking place. This triggers surface activation, and runs the
animations, allowing these tests to pass even with an infinite deadline.

Bug: 883547, 874162
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I0d9e1ae7d10fab186207cdfbc8e2f85f60d99f35
Reviewed-on: https://chromium-review.googlesource.com/c/1229354
Commit-Queue: Mason Freed <masonfreed@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595898}
2018-10-02 17:49:47 +00:00
Mathias Bynens
172fc6b1f9 Update layout test docs
The test runner is `run_web_tests.py` (and not `run_webkit_tests.py`).

This patch also makes smaller tweaks and improvements to the doc.

Change-Id: I559cf54e98135f1fe90986e1cf06d140ca911918
Reviewed-on: https://chromium-review.googlesource.com/1203991
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Victor Costan <pwnall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588805}
2018-09-05 09:39:43 +00:00
Tom Bridgwater
eef401541b Update URL for GN quick start guide.
Change-Id: I8c76cf49161daf8cccaa1cfc32db8fcd930f01da
Reviewed-on: https://chromium-review.googlesource.com/1178692
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583909}
2018-08-17 00:54:43 +00:00
Max Moroz
f5b31fcd43 Update build instructions to recommend using autoninja instead of ninja.
Change-Id: I327542d2ec81be8d3d4240a82f7121c27c4994b3
Reviewed-on: https://chromium-review.googlesource.com/1169427
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Max Moroz <mmoroz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582351}
2018-08-10 21:55:48 +00:00
Ned Nguyen
bd8cc342d9 Remove references to NEEDSMANUALREBASELINE in markdown docs and testing/scripts/common.py file
NOTRY=true  # chromedriver_py_tests flake (https://crbug.com/864205)

Bug: 621126
Change-Id: I61d2722044cffc44e5bc93b5ffc7ff9d3ab6d313
Reviewed-on: https://chromium-review.googlesource.com/1142359
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: John Chen <johnchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576513}
2018-07-19 16:04:29 +00:00
Dirk Pranke
b5f530d4fb Update json_test_results_format docs.
This CL adds the `is_regression` per-test field (though it won't
yet be set by anything), and adds a bunch of text clarifying the
differences between failures, unexpected results, and regressions.

It also does some general editorial cleanup, fixing typos and
re-sorting some of the enumerated values.

BUG=822078, 837047

Change-Id: If78f6ef66c01d7c2924bfd98589832fe9299968f
Reviewed-on: https://chromium-review.googlesource.com/1096486
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Chan Li <chanli@chromium.org>
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566615}
2018-06-12 22:51:32 +00:00
Philip Jägenstedt
3a3d5b82be Update web-platform-tests URLs after repo move
Part of https://bit.ly/wpt-transition.

Most of the changes were done as such:
```
git grep -l w3c/web-platform-tests | xargs sed -i 's#https://github.com/w3c/web-platform-tests#https://github.com/web-platform-tests/wpt#g'
git grep -lF 'web-platform-tests.org' | xargs sed -i 's#http://web-platform-tests.org#https://web-platform-tests.org#g'
```

The http => https changes included here because one such URL got
involved in the first after manual tweaks.

Change-Id: Ied8334b88e4a0936cd995a002bb2a502c04ecfc7
Reviewed-on: https://chromium-review.googlesource.com/1080510
Reviewed-by: Tim Volodine <timvolodine@chromium.org>
Reviewed-by: Robert Ma <robertma@chromium.org>
Reviewed-by: Rick Byers <rbyers@chromium.org>
Commit-Queue: Philip Jägenstedt <foolip@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563242}
2018-05-31 15:25:35 +00:00
Kent Tamura
cd3ebc4c69 content_shell: add --run-web-tests to replace --run-layout-test.
Rename switches::IsRunLayoutTestSwitchPresent to
IsRunWebTestsSwitchPresent.

Note that we decided to rename LayoutTests to web_tests.
https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/KKNbuzj-3HY/H8FWgtKrBgAJ

NOPRESUBMIT due to crbug.com/841656.

NOPRESUBMIT=true

Bug: 843412
Change-Id: I03db1e3a427265b926d8d0811b4cea7d34cd8a70
Reviewed-on: https://chromium-review.googlesource.com/1053328
Commit-Queue: Kent Tamura <tkent@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558998}
2018-05-16 06:44:22 +00:00
Jeff Carpenter
489d402f43 Warn when unsupported wildcards are used in virtual web tests
Bug: 322720
Change-Id: I04c722cf1443bf09734a1851a4679eafacff22a3
Reviewed-on: https://chromium-review.googlesource.com/1058319
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Commit-Queue: Jeff Carpenter <jeffcarp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558548}
2018-05-15 00:23:00 +00:00
Xianzhu Wang
af4fa41532 [CI] Remove "window." prefix in layout tests for test_shell injected global names
This doesn't include those in 'if' statements.

Bug: 703768
TBR: already agreed in blink-dev; too many files.
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: I499b91695e177d2a498d96cf20537ee146e22d06
Reviewed-on: https://chromium-review.googlesource.com/1057947
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558467}
2018-05-14 21:26:52 +00:00
Euisang Lim
e2f2e78914 Fix some dead links in docs/testing
1. Change breakpad path to third_party/breakpad
- docs/testing/using_breakpad_with_content_shell.md
moved in https://chromium-review.googlesource.com/681838

2. Change componetns/test_runner to content/shell_test_runner
- docs/testing/writing_layout_tests.md
moved in https://codereview.chromium.org/2707183003

3. Fix testharness api link
- docs/testing/layout_tests_tips.md
https://github.com/w3c/testharness.js is moved under
https://github.com/w3c/web-platform-tests

Bug: N/A
Change-Id: I3c1024da6bc3ae9a785cb597e3b76dbd910b2593
Reviewed-on: https://chromium-review.googlesource.com/1049767
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557098}
2018-05-09 05:04:06 +00:00
Kent Tamura
5e69e91171 Update references to "Tools/Scripts"
All code in third_party/WebKit/Tools/Scripts was moved to
third_party/blink/tools.
This CL also fixes references to old names of scripts in Tools/Scripts.

* third_party/WebKit/PRESUBMIT.py:
 Remove dead code. This PRESUBMIT.py doesn't use
 |audit_non_blink_usage|.

Bug: 829697
Change-Id: I6c482a795708fa207124cb2030a4fdaa8ceac343
Reviewed-on: https://chromium-review.googlesource.com/1038863
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555366}
2018-05-02 13:05:00 +00:00
Kent Tamura
0101944bcb Update references to "webkitpy".
It was moved to third_party/blink/tools, and renamed to "blinkpy".

TBR=timvolodine@chromium.org

Bug: 829697
Change-Id: Ie220adc5ce14025112e360657c3954027ae46ebe
Reviewed-on: https://chromium-review.googlesource.com/1032350
Reviewed-by: Tim Volodine <timvolodine@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555195}
2018-05-01 22:06:58 +00:00
Kent Tamura
a045a7ffb6 Add //third_party/blink/tools/run_web_tests.*,
which is the new name of run-webkit-tests.
This CL also replaces references to "run-webkit-tests" with
"run_web_tests.py".

* //blink/tools/run_layout_tests.py
 Show a message, and run run_web_tests.py.

* //BUILD.gn
 "webkit_layout_tests" doesn't need //third_party/WebKit/Tools/Scripts
 any longer.

* //testing/buildbot/gn_isolate_map.pyl
 Replace run-webkit-tests with run_web_tests.py.

* //third_party/blink/tools/run_web_tests.{bat,py}
 Added.

* //third_party/WebKit/Tools/Scripts/run-webkit-tests
 Show a message.

* Other files: Really trivial changes. In many files, this CL
  replaces "run-webkit-tests" with "run_web_tests.py" in comments or
  strings.

Note that we decided to rename LayoutTests to web_tests.
https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/KKNbuzj-3HY/H8FWgtKrBgAJ


Bug: 829697
Change-Id: I899457cb3bcdb306aa47843a4c767c5980d9edc0
Reviewed-on: https://chromium-review.googlesource.com/1025543
Commit-Queue: Kent Tamura <tkent@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553452}
2018-04-25 05:08:11 +00:00
Kent Tamura
02b4a5b1fc Add //thid_party/blink/tools/lint_test_expectations.py
It will supersedes //third_party/WebKit/Tools/Scripts/lint-test-expectations.
lint-test-expectaions isn't removed yet due to dependency from
build/scripts/slave/chromium/.

Bug: 829697
Change-Id: I213b413304240e2f8672a1d2209a2800331b1ade
Reviewed-on: https://chromium-review.googlesource.com/1025437
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553357}
2018-04-24 23:26:28 +00:00
Kent Tamura
b53757e230 Move WebKit/Tools/Scripts/webkit-patch to blink/tools/blink_tool.py
The suffix part of the new name is 'tool' instead of 'patch' because
this command doesn't handle patches so much.

Bug: 829697
Change-Id: I90f34b6260032a7bbaf562d9b58ffc1a55c3922f
Reviewed-on: https://chromium-review.googlesource.com/1018700
Commit-Queue: Kent Tamura <tkent@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#552382}
2018-04-20 17:54:48 +00:00