OLD | NEW |
1 # Writing Layout Tests | 1 # Writing Layout Tests |
2 | 2 |
3 _Layout tests_ is a bit of a misnomer. This term is | 3 _Layout tests_ is a bit of a misnomer. This term is |
4 [a part of our WebKit heritage](https://webkit.org/blog/1452/layout-tests-theory
/), | 4 [a part of our WebKit heritage](https://webkit.org/blog/1452/layout-tests-theory
/), |
5 and we use it to refer to every test that is written as a Web page (HTML, SVG, | 5 and we use it to refer to every test that is written as a Web page (HTML, SVG, |
6 or XHTML) and lives in | 6 or XHTML) and lives in |
7 [third_party/WebKit/LayoutTests/](../../third_party/WebKit/LayoutTests). | 7 [third_party/WebKit/LayoutTests/](../../third_party/WebKit/LayoutTests). |
8 | 8 |
9 [TOC] | 9 [TOC] |
10 | 10 |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 cost and benefits of having the tests | 205 cost and benefits of having the tests |
206 [gracefully degrade to manual tests](./layout_tests_with_manual_fallback.md) in | 206 [gracefully degrade to manual tests](./layout_tests_with_manual_fallback.md) in |
207 the absence of the testing APIs. | 207 the absence of the testing APIs. |
208 | 208 |
209 *** promo | 209 *** promo |
210 In many cases, the user gesture is not actually necessary. For example, many | 210 In many cases, the user gesture is not actually necessary. For example, many |
211 event handling tests can use | 211 event handling tests can use |
212 [synthetic events](https://developer.mozilla.org/docs/Web/Guide/Events/Creating_
and_triggering_events). | 212 [synthetic events](https://developer.mozilla.org/docs/Web/Guide/Events/Creating_
and_triggering_events). |
213 *** | 213 *** |
214 | 214 |
215 *** note | |
216 TODO: document wpt_automation. Manual tests might end up moving here. | |
217 *** | |
218 | |
219 ### Relying on Blink-Specific Testing APIs | 215 ### Relying on Blink-Specific Testing APIs |
220 | 216 |
221 Tests that cannot be expressed using the Web Platform APIs or WPT's testing APIs | 217 Tests that cannot be expressed using the Web Platform APIs or WPT's testing APIs |
222 use Blink-specific testing APIs. These APIs are only available in | 218 use Blink-specific testing APIs. These APIs are only available in |
223 [content_shell](./layout_tests_in_content_shell.md), and should only be used as | 219 [content_shell](./layout_tests_in_content_shell.md), and should only be used as |
224 a last resort. | 220 a last resort. |
225 | 221 |
226 A downside of Blink-specific APIs is that they are not as well documented as the | 222 A downside of Blink-specific APIs is that they are not as well documented as the |
227 Web Platform features. Learning to use a Blink-specific feature requires finding | 223 Web Platform features. Learning to use a Blink-specific feature requires finding |
228 other tests that use it, or reading its source code. | 224 other tests that use it, or reading its source code. |
(...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
579 * The `http/` directory hosts tests that require an HTTP server (see above). | 575 * The `http/` directory hosts tests that require an HTTP server (see above). |
580 * The `resources/` subdirectory in every directory contains binary files, such | 576 * The `resources/` subdirectory in every directory contains binary files, such |
581 as media files, and code that is shared by multiple test files. | 577 as media files, and code that is shared by multiple test files. |
582 | 578 |
583 *** note | 579 *** note |
584 Some layout tests consist of a minimal HTML page that references a JavaScript | 580 Some layout tests consist of a minimal HTML page that references a JavaScript |
585 file in `resources/`. Please do not use this pattern for new tests, as it goes | 581 file in `resources/`. Please do not use this pattern for new tests, as it goes |
586 against the minimality principle. JavaScript and CSS files should only live in | 582 against the minimality principle. JavaScript and CSS files should only live in |
587 `resources/` if they are shared by at least two test files. | 583 `resources/` if they are shared by at least two test files. |
588 *** | 584 *** |
OLD | NEW |