Commit graph

1667 commits

Author SHA1 Message Date
Andrey Lushnikov 93d8e7ae4a
docs: add js release notes (#15681) 2022-07-21 14:44:28 -07:00
Max Schmitt 2de0624a5e
docs(codegen): fix broken example (#15858)
follow-up: 09debb4a55
2022-07-21 23:41:59 +02:00
Max Schmitt 311580bcec
docs: prefix library pages with Getting started (#15847) 2022-07-21 19:37:58 +02:00
Debbie O'Brien 09debb4a55
docs: fix library code (#15837) 2022-07-21 16:08:25 +02:00
jfgreffier a2d2865f05
docs: fix screenshot link (#15831) 2022-07-21 16:08:10 +02:00
Ross Wollman 2996f4bbb5
docs: selectors links, strictness warnings (#15823)
Followup to #15782.

NB: When the Selectors and Locators guides are re-vamped more
holistically, we can address this better.
2022-07-20 17:09:14 -07:00
Max Schmitt dcb83d9db0
docs: new Python onboarding story (#15782) 2022-07-21 00:57:09 +02:00
Ross Wollman 6d883deb69
docs: note about browser.newContext inheritance (#15771) 2022-07-19 11:10:26 -07:00
Debbie O'Brien 33f45e3f53
docs(debug): fix lang specific code (#15713)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-19 15:24:50 +02:00
Debbie O'Brien d34830c96f
docs(node): intro vs code improvements (#15761) 2022-07-19 09:04:04 +02:00
Max Schmitt 9fda46822c
chore: enhance .NET onboarding story (#15755) 2022-07-18 23:39:01 +02:00
Dmitry Gozman c65b5171d4
docs: show saveAs in downloads guide (#15766) 2022-07-18 13:37:21 -07:00
Leon 267614341c
docs: spelling fixes (#15746) 2022-07-17 20:13:45 -07:00
Yury Semikhatsky 582b5e08b2
docs: clarify toHaveURL parameter semantics (#15723) 2022-07-15 11:09:20 -07:00
Yury Semikhatsky d62baa005f
docs: hide experimental service worker api in language ports (#15722)
* Revert "docs: expose BrowserContext.serviceWorkers to Java/.NET (#15635)"

This reverts commit 43906d0f7b.

* Revert "docs: expose BrowserContext.serviceWorker to Java/.NET (#15616)"

This reverts commit cfcc35b9a6.

* Make Request.serviceWorker available only in js
* Make sw doc js specific
2022-07-15 10:57:18 -07:00
Ross Wollman 732b8f4760
chore: PW_EXPERIMENTAL_SERVICE_WORKER_NETWORK_EVENTS and doc clarifications (#15688) 2022-07-14 17:40:22 -07:00
Max Schmitt 4bba41ab8f
Revert "feat(matchers): add toContainClass (#15491)" (#15670)
This reverts commit e4debd0bf6.
2022-07-14 22:03:37 +02:00
Ross Wollman 0bf2ddff2d
docs: remove redundant qualifier (#15659) 2022-07-14 09:43:53 -07:00
Andrey Lushnikov df9beb4045
chore: cut v1.24 (#15654) 2022-07-14 09:42:40 -07:00
Yury Semikhatsky e37514b43c
docs: dragAndDrop source/target descriptions (#15658) 2022-07-14 09:42:26 -07:00
Debbie O'Brien edd8f44066
docs: minor text fixes (#15656) 2022-07-14 16:19:55 +02:00
Debbie O'Brien 2b8198f1e3
docs: new getting started stucture (#15624)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-14 14:17:24 +02:00
Ross Wollman 9387327a97
docs: Service Worker examples and explanations (#15595)
Resolves #15582.
2022-07-13 16:42:46 -07:00
Ross Wollman 43906d0f7b
docs: expose BrowserContext.serviceWorkers to Java/.NET (#15635) 2022-07-13 15:02:03 -07:00
Dmitry Gozman 51c3ea55ed
Revert "feat(line reporter): show testing progress (#15547)" (#15631)
This reverts commit e76d9b3b28.
2022-07-13 13:54:26 -07:00
Max Schmitt cfcc35b9a6
docs: expose BrowserContext.serviceWorker to Java/.NET (#15616) 2022-07-13 17:54:49 +02:00
Max Schmitt ee7d60fcee
docs: migrate page actions to locator actions 2/n (#15603) 2022-07-13 11:50:18 +02:00
Max Schmitt e4debd0bf6
feat(matchers): add toContainClass (#15491) 2022-07-12 23:17:10 +02:00
Max Schmitt 428cdc073c
docs: migrate page actions to locator actions 1/n (#15586) 2022-07-12 22:39:31 +02:00
jfgreffier f42ab636f6
docs: syntax highlighting in vitest example (#15585) 2022-07-12 21:37:04 +02:00
Dmitry Gozman e76d9b3b28
feat(line reporter): show testing progress (#15547)
Line reporter now shows stats in addition to the test name:
```
[chromium] › page/page-click-react.spec.ts:108:1 › should not retarget when element changes on hover
[21/93] Passed: 17 Flaky: 0 Failed: 0 Skipped: 4 (7s)
```
2022-07-11 20:44:50 -07:00
Max Schmitt 7fe4e7a384
docs(ci): update with language specific examples (#15541) 2022-07-11 23:33:15 +02:00
Nick Partridge 5a3f0a7195
docs(ci): add GitHub Actions via containers and sharding example (#15288)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-11 22:34:24 +02:00
jfp1992 7b881cf0fe
docs: fix typo bonding > bounding (#15442)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-11 22:13:06 +02:00
Max Schmitt 342c971169
docs(dotnet): add docs about MSTest (#15526) 2022-07-11 22:12:11 +02:00
Ross Wollman 26805d7617
docs: selectOption actionability checks (#15518)
Based on anecdotal testing, and the code:

dd0eb5fb1d/packages/playwright-core/src/server/dom.ts (L557)

it looks like `selectOption` documentation failed to note it waits on
`visiible` and `enabled`.
2022-07-11 11:04:34 -07:00
Max Schmitt 98ea418124
fix(expect): expect.not types (#15487) 2022-07-11 18:31:53 +02:00
Debbie O'Brien d5ba296147
docs: getting started with vs code section (#15362)
Co-authored-by: Ross Wollman <rwoll@users.noreply.github.com>
2022-07-08 11:40:35 -07:00
Max Schmitt 349c9e884c
docs(python): add extension testing guide with fixtures (#15486) 2022-07-08 13:40:49 +02:00
maxnk fb3a0b2a4d
docs(test-auth-js): added missing static keyword to pages create method (#15469) 2022-07-07 17:11:17 -07:00
Ross Wollman 799d4703bc
feature(test-runner): multiple web servers (#15388)
Fixes #8206.

Since #8206 is a long-awaited (~ 1 year old), popular (~ 45 reactions, frequently requested in community channels, etc.), this PR aims to unblock folks.

Notably, we do not innovate on the `webServer` API, despite knowing we're not in love with it. We'll save the innovation for either Plugins or a new `LaunchConfigs` option. (We haven't yet arrived at a Plugin API we like, and instead of launching a new option guessing what the "better" launchConfig API would be, let's wait and see how folks use this new Array-variant of `webServer` which—despite its name—can be used for non-Web Server launches!
2022-07-07 15:27:21 -07:00
Andrey Lushnikov b8deb2ba8f
chore: add 1.23 video to release notes (#15467) 2022-07-07 12:34:01 -07:00
Kaspar Emanuel 413258bfac
docs: add chrome extension testing example (#14969) 2022-07-07 20:28:01 +02:00
jfgreffier efec0261a1
feat(inspector): add keyboard shortcuts (#12014) (#15326) 2022-07-07 11:25:48 -07:00
Dmitry Gozman 4e46ac2191
docs: explain how to sign in once per worker (#15427) 2022-07-06 13:54:58 -07:00
Dmitry Gozman 89c16cbc8b
feat(runner): anonymous describes (#15424)
Useful to set some options without coming up with an artificial name.

```js
test.describe(() => {
  test.use({ colorScheme: 'dark' });

  test('my test', () => {});
})
```
2022-07-06 13:54:11 -07:00
Ross Wollman 12c7e82fb7
docs: storageState caveat (#15395)
Resolves #15393.
2022-07-06 09:59:56 -07:00
Max Schmitt 21dcc5139d
docs(python): reference to base url package (#15412) 2022-07-06 14:31:39 +02:00
Alireza Mirian 4508cd5816
docs(ct): add yarn create example (#15407)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-06 10:27:49 +02:00
Pavel Feldman 6181b0dcaf
docs: annotate since (#15386) 2022-07-05 17:24:50 -07:00
jfgreffier cfd00c0baf
docs: Add Vitest example (#15356) 2022-07-05 11:12:02 -07:00
Ross Wollman 6cb3236acd
feat(chromium): Service Worker Network Instrumentation and Inspection (#14716)
Adds Chromium support for Service Worker Networking (interception/routing, Request/Response events, and HAR).

Resolves #1090.
Depends on #14714 and #14714.
Supercedes #14321.
Follow up #14711.

Landed upstream patches:
- https://chromium-review.googlesource.com/c/chromium/src/+/3510917
- https://chromium-review.googlesource.com/c/chromium/src/+/3526571
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3566669
- https://chromium-review.googlesource.com/c/chromium/src/+/3544685
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3610924
- https://chromium-review.googlesource.com/c/chromium/src/+/3689949
2022-07-01 12:49:43 -07:00
Max Schmitt 84715d6532 docs(release-notes): no jammy Docker image for language bindings 2022-07-01 14:57:04 +02:00
Max Schmitt 1e28870af7
docs(release-notes): add 1.23 release notes for .NET (#15295) 2022-07-01 14:34:12 +02:00
Debbie O'Brien 239119e59f
docs: add video to component tests (#15242) 2022-07-01 09:22:56 +02:00
Debbie O'Brien 24dce77efb
docs: add videos to release notes (#15263) 2022-07-01 09:22:45 +02:00
Ross Wollman aced45347b
chore: port 1.23 Python release notes (#15289) 2022-06-30 16:42:38 -07:00
Ross Wollman 9cafab382b
docs: clarify use of browser.close (#15255) 2022-06-29 18:41:21 -07:00
Dan Bjorge cf6ffdf043
docs(accessibility-testing): fix syntax issues in example 1 (#15204) 2022-06-29 12:47:31 -07:00
Max Schmitt 461bd92f12
docs(browsers): add note about 'self signed certificate in certificate chain' Error (#15221) 2022-06-29 13:49:22 +02:00
Pavel Feldman 6a8d835145
chore: allow updating har while routing (#15197) 2022-06-28 15:09:36 -07:00
Ross Wollman 51fd212906
docs(test-runner): add a note re: fixture naming (#15203) 2022-06-28 14:55:06 -07:00
Dan Bjorge 69273e42ae
docs(accessibility-testing): create accessibility testing guide for js (#15154) 2022-06-28 14:21:30 -07:00
Sébastien Règne f43fe4855d
docs: fix route.fallback typo (#15173) 2022-06-28 13:46:54 -07:00
Ross Wollman 3805e942a1
docs(java): fix pom.xml (and auto-generate) (#15192) 2022-06-28 11:37:53 -07:00
Ross Wollman 43a621e97d
docs: fix routing and har examples (#15162) 2022-06-27 20:34:30 -07:00
Andrey Lushnikov 857d46ca93
docs: add Java release notes (#15158) 2022-06-27 15:31:41 -07:00
Yury Semikhatsky 7ebd81c1fa
docs(java): more FormData examples (#15156) 2022-06-27 14:02:13 -07:00
Pavel Feldman 8c590cb2af
chore: undeprecate sync headers() (#15152) 2022-06-27 10:34:32 -07:00
Simon Siefke 597fed5ae4
docs(browsers): fix path to local binaries (#15123) 2022-06-25 18:11:47 +02:00
Stuart Lang eba2bdffb9
docs: fix typo: surved -> served (#15105) 2022-06-24 15:06:57 +02:00
Yury Semikhatsky 997aac59ff
docs: recordHar content and mode options for language ports (#15097) 2022-06-23 18:55:15 -07:00
Jeff Astor 1015fd37f0
docs(api testing): fix typo (#15096) 2022-06-23 17:36:11 -07:00
Andrey Lushnikov 6fab9d4044
docs: add release notes for 1.23 javascript (#15090) 2022-06-23 16:02:53 -07:00
Pavel Feldman 7bd72716f9
feat(har): introduce the slim mode (#15053) 2022-06-22 14:44:12 -07:00
Dmitry Gozman 033c250f6d
fix(har): remove types/har.d.ts, update har.ts per spec (#15046)
Drive-by: typo fix in `notFound` option name.
2022-06-22 12:16:29 -07:00
Pavel Feldman 9525bedc1f
feat(har): re-add routeFromHAR (#15024) 2022-06-21 22:12:37 -07:00
Dmitry Gozman c02e165eb6
fix(test runner): toHaveScreenshot should not overwrite matching expectations (#15028)
Even in the `--update-snapshots` mode we should keep existing files if
they are matching under the threshold, to avoid needless churn.
2022-06-21 18:01:25 -07:00
Pavel Feldman c0ea28d558 docs: nuke api reference from test assersions 2022-06-21 10:55:32 -07:00
Max Schmitt 3a61938628
chore: mark 1.24-next (#14857) 2022-06-21 19:32:15 +02:00
Ross Wollman 0f8114f6a8
docs: replace serviceWorkers workaround (#14902) 2022-06-20 19:31:19 -07:00
Jye Ruey db9ff4b7c9
docs: update page object model example (#14917) 2022-06-20 19:08:57 -07:00
Bill Brower 21c510ee0d
chore(cli): add example for running tests against a project (#14926) 2022-06-20 19:08:18 -07:00
Kaspar Emanuel 42e6e094ca
docs: fix chrome extension examples (#14968) 2022-06-20 19:04:34 -07:00
Pavel Feldman 5e6b493bc9
doc(har): add more details into the har doc (#14998) 2022-06-20 17:54:39 -07:00
Dmitry Gozman 45ec2d0825
docs: explain how to test multiple users in the same test (#14875) 2022-06-20 16:05:43 -07:00
Dmitry Gozman e3da3ebfa4
feat(har): do not expose HAR types, remove HARResponse fulfill (#14992) 2022-06-20 15:19:54 -07:00
Dmitry Gozman 5397394653
feature(har): add testOptions.har (#14991)
Can now be used with `test.use({ har })`.
Also added more tests for latest har features.
2022-06-20 13:37:31 -07:00
azad-derakhshani-GS 5b1211b37d
docs(test-advanced): fix various typos (#14932) 2022-06-20 20:18:42 +02:00
Pavel Feldman be64e9ce66
chore(har): attach resources for .zip hars (#14938) 2022-06-16 18:27:25 -07:00
Pavel Feldman 245c33a5d4
feat(har): allow storing content as separate files (#14934) 2022-06-16 16:33:32 -07:00
Dmitry Gozman cddf3293cf
docs: mention chaining in locator.filter (#14920) 2022-06-16 10:05:30 -07:00
Stephen Kilbourn 9c996b2876
docs(test-advanced): add instructions for tracing during global setup (#14891)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-16 18:45:14 +02:00
Yury Semikhatsky b88c89548e
docs: update har options for non-js ports (#14899) 2022-06-15 16:57:42 -07:00
Yury Semikhatsky 4ea0ac1861
docs: update network guide on replaying from har (#14898) 2022-06-15 16:53:48 -07:00
Yury Semikhatsky c349c1d57f
feat: newContext.har (#14892)
Replaced {Page,BrowserContext}.(un)routeFromHar with browser.newContext.har.
2022-06-15 16:35:44 -07:00
Ross Wollman 1ed2e46f07
docs: recordHar.urlFilter for non-js clients (#14894) 2022-06-15 15:40:21 -07:00
Yury Semikhatsky a422c77f2b
docs: update network guide to use routeFromHar (#14887) 2022-06-15 09:33:19 -07:00
Yury Semikhatsky df63ae9dce
docs: update strict routeFromHar default value (#14886) 2022-06-15 09:32:40 -07:00
Ross Wollman 112a18e083
docs: document new webServer "ready" status codes (#14885)
Sync docs with implementation introduced via 30f3d526eb
2022-06-15 09:00:29 -07:00
Yury Semikhatsky 259c8d64a5
feat: Page.routeFromHar (#14870) 2022-06-15 08:41:46 -07:00
Yury Semikhatsky e00a26a11d
feat(route): fulfill with HARResponse (#14865) 2022-06-14 15:07:22 -07:00
marlowl 9d9b5d13be
docs(class-testconfig.md): remove trailing devices reference (#14867) 2022-06-14 13:25:06 -07:00
Pavel Feldman 9cf068ad06
feat(fallback): allow falling back w/ overrides (#14849) 2022-06-13 17:56:16 -07:00
Dmitry Gozman 324cdcd874
docs: warn about problematic usages of layout selectors (#14850) 2022-06-13 17:44:53 -07:00
Ross Wollman 61536098be
docs: fix serviceWorkers formatting (#14845) 2022-06-13 15:18:24 -07:00
Pavel Feldman dcdd3c3cdb
feat(route): explicitly fall back to the next handler (#14834) 2022-06-13 12:30:51 -07:00
Pavel Feldman 76abb3a5be
chore: unify tab generation (#14802) 2022-06-10 17:34:31 -07:00
Yury Semikhatsky 5617e5c613
docs: route.har options for non-js clients (#14804) 2022-06-10 16:53:01 -07:00
Yury Semikhatsky e94ec8a85f
docs: fix toHaveValues param type for java and .net (#14803) 2022-06-10 16:34:56 -07:00
Dmitry Gozman f486760229
docs: add a guide for HAR record/replay (#14800) 2022-06-10 15:32:03 -07:00
Dmitry Gozman 7c0bff15ca
feat(fulfill): improve fulfilling from har (#14789)
- `har` option is now an object `{ path, fallback }`.
- Allows falling back to `abort()`, `continue()` or throwing.
- Matches based on url + method.
- Follows redirects in the HAR file.
- Nice error/stack when throwing.
- Tests.
2022-06-10 14:26:45 -07:00
Sergio Freire 060cd9d97c
feat(junit reporter): link testcases to Xray test issues and provide additional metadata for Xray Test Management (#11374)
Co-authored-by: Sergio Freire <sergio.freire@xpand-it.com>
2022-06-10 10:31:48 +02:00
Meir Blachman 531bdb2493
docs: update showcase playwright-go git url (#14780) 2022-06-10 10:09:11 +02:00
Max Schmitt 3853014fa7
chore: add ubuntu 22 support (#14588) 2022-06-09 13:20:18 +02:00
Dmitry Gozman e975aef961
feat(route): fulfill from har (#14720)
feat(route): fulfill from har

This allows to use pre-recorded HAR file to fulfill routes.
2022-06-08 20:29:03 -07:00
Ross Wollman 85d03714d9
feat: add allow/block serviceWorkers option (#14714)
Adds cross-browser support for easily allowing/blocking Service Workers via a Context option.

Includes plumbing for Playwright Test's `use`.

Resolves #14522.

Relates #1090.
Supercedes #14321.
2022-06-08 18:27:51 -04:00
Ross Wollman fccee89b41
feat: add Response.fromServiceWorker flag (#14715)
Resolves #14666.

Relates #1090.
Supercedes #14321.
2022-06-08 17:34:19 -04:00
Max Schmitt f7f44d4fd8
docs: move cli install-deps under install browsers (#14700) 2022-06-08 15:13:33 +02:00
Dmitry Gozman fdcdd58d7f
feat(har): introduce urlFilter (#14693)
This is a glob or regex pattern that filters entries recorder in the HAR.
2022-06-07 18:09:47 -07:00
Dmitry Gozman 1c6a136909
docs: describe test.setTimeout inside beforeAll/afterAll (#14670)
Adding documentation that `test.setTimeout()` call from the
`beforeAll`/`afterAll` hook changes the timeout of the hook itself.
2022-06-06 15:18:38 -07:00
Sébastien Règne 4c2fc6b6eb
feat(browser): add Browser.BrowserType() method (#14468) 2022-06-06 09:46:08 -07:00
Tuomo Raitila 9711e62882
Fix typo (#14633) 2022-06-03 14:26:16 -07:00
Max Schmitt 94e631e0e2
docs: expose 'Modify responses' guide across languages (#14599) 2022-06-02 23:12:09 +02:00
Ross Wollman 978854b859
chore: move multi-select assertion to toHaveValues (#14595)
Follow-up to e0a87e52d7
2022-06-02 16:01:34 -04:00
Ross Wollman e0a87e52d7
feat: support multi-select/combo box with toHaveValue (#14555) 2022-06-02 12:10:28 -04:00
Dmitry Gozman d00efa0dfe
feat(expect): add ignoreCase option to toHaveText and toContainText (#14534) 2022-06-02 05:52:53 -07:00
Dmitry Gozman 734c8b601c
docs: add a guide to help those familiar with testing library (#13736) 2022-05-31 16:42:59 -07:00
Max Schmitt 77537d6b59
docs(dotnet): enable request interception (#14517) 2022-05-31 17:46:16 +02:00
Yury Semikhatsky c1aecc7d50
docs: maxDiffPixels description typo (#14456) 2022-05-29 09:46:06 -07:00
Pavel Feldman f724fa570f
docs: make ts snippets esm-friendly (#14451) 2022-05-27 12:36:59 -07:00
Yury Semikhatsky cac13c248b
docs: fix typo in soft assertions example (#14450) 2022-05-27 10:57:03 -07:00
Yury Semikhatsky 3d83569e5c
docs: update macOS required version (#14410) 2022-05-27 10:18:36 -07:00
Max Schmitt c35d29d7e5
docs(dotnet): add api-testing doc. (#14449) 2022-05-27 17:35:42 +02:00
Tim Rogowski 3030d97b2b
docs(python): fix missing await in JS evaluation example (#14426) 2022-05-27 12:21:13 +02:00
Yury Semikhatsky d5c1a5a11f
docs: definition of enabled state (#14409) 2022-05-25 12:05:17 -07:00
Ross Wollman 9b225f2ad4
fix: expect.toHaveScreenshot.animations types (#14387)
This makes the docs/types match the code which has already been
released.

Relevant code to traverse up from:
- 3e084829c0/packages/playwright-core/src/server/screenshotter.ts (L89)
- 3e084829c0/packages/playwright-core/src/server/screenshotter.ts (L118)

Fixes #14385
2022-05-24 11:34:29 -07:00
Andrey Lushnikov 3fd435d1d3
docs: fix docs for toHaveScreenshot (#14280) 2022-05-24 10:54:32 -07:00
Max Schmitt 7f640d8a49
docs(dotnet): add API testing (#13889) 2022-05-23 22:12:57 +03:00
Pavel Feldman abed166dd4 docs: components known issues 2022-05-21 11:28:37 -07:00
Yury Semikhatsky 3c6146c9ec
docs: give value parameter proper name (#14256) 2022-05-18 09:59:07 -07:00
Max Schmitt 9256de5f48
chore: fix wrong toHaveScreenshot defaults in docs (#14200) 2022-05-16 22:26:23 +03:00
Pavel Feldman 56a5f2c506
fix(types): fix the toHaveScreenshot types (#14174)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-05-16 07:53:46 -07:00
Kathleen Brand 41c676b3dc
docs: fix small typo in 'Migrating from Protractor' (#14178)
Co-authored-by: Kathleen Brand <kathleen.brand@resmed.com.au>
2022-05-15 20:34:37 -07:00
Takuya Matsuda 634ba85c83
docs: fix grep example command (#14138) 2022-05-13 09:25:56 -07:00
Dmitry Gozman c3beb71b07
fix(test runner): do not run automatic fixtures for beforeAll hooks (#14104)
There are a few issues this covers:
- Some fixtures like `page` and `context` are not allowed in `beforeAll`
  hooks, so using them in automatic fixture makes it throw.
- Running automatic fixture solely for `afterAll` is unexpected.
  This currently happens when `afterAll` is run for cleanup after
  fixture timeout/throw.

For built-in playwright fixture, we keep `'all-hooks-included'` auto mode.

Added a doc explaining the execution order.
2022-05-13 11:17:20 +01:00
Andrey Lushnikov f7adbd83ee
chore: cut v1.22.0 (#14098) 2022-05-12 11:12:01 -07:00
Andrey Lushnikov 5268dd7196
docs: add release notes for 1.22 (#14100) 2022-05-12 11:07:55 -07:00
Dmitry Gozman 0e2855348c
feat(locators): remove layout locators (#14129) 2022-05-12 18:50:19 +01:00
Pavel Feldman 729e41b3aa docs: component testing npm nit 2022-05-11 12:24:04 -07:00
Max Schmitt 2844623109
docs: add route class -> networking guide reference (#14092) 2022-05-11 16:07:00 +01:00
Andrey Lushnikov 7ec1e59e3d
docs: move vrt docs to use toHaveScreenshot (#14059) 2022-05-10 07:43:03 -07:00
Pavel Feldman e9378ba5fc
chore: hide plugins again (#14038) 2022-05-09 10:06:13 -07:00
Yury Semikhatsky 3dc5a7c05a
docs: fix method name in java example (#14036) 2022-05-09 09:18:19 -07:00
Andrey Lushnikov 5aa82dc5e4
chore: un-experiment expect(pageOrLocator).toHaveScreenshot() (#14033)
This patch un-experiments `expect(pageOrLocator).toHaveScreenshot()`
method.

Fixes #13526
2022-05-09 08:34:03 -07:00
Dmitry Gozman 6931d89eaf
feat(locators): rename locator.that to locator.filter (#14025) 2022-05-08 21:59:40 +01:00
Dmitry Gozman c3cf7ee4a7
feat(layout locators): remove maxDistance option (#14013) 2022-05-08 07:18:16 +01:00
Pavel Feldman 5c9e7f48e0
fix(debug): do not pause on internal calls, update ct docs (#14018) 2022-05-07 19:56:25 -07:00
Andrey Lushnikov 5a5bb36d28
chore: nuke "fonts" screenshot option (#14004)
It was never released since it wasn't working as expected on WebKit WPE.

Fixes #12839
2022-05-06 17:54:17 -07:00
Pavel Feldman 1bbefce9af
Revert "chore: use plugins for component testing again (#13977)" (#13998)
This reverts commit a2f9f15e3e.
2022-05-06 12:02:07 -07:00
Pavel Feldman 2e96c7eeb3
chore: update ct how-to (#13981) 2022-05-05 17:59:37 -07:00
Pavel Feldman a2f9f15e3e
chore: use plugins for component testing again (#13977) 2022-05-05 14:26:56 -07:00
hirohe 3ab0ecf143
docs: update Worker-scoped fixtures code example (#13951) 2022-05-05 11:27:53 -07:00
Pavel Feldman 058f32caff
chore: fixtures-via-plugin implementation (#13950) 2022-05-05 10:14:00 -07:00
Nav-2d 831b9e1d6d
docs(components): update docs (#13953) 2022-05-05 07:35:01 -07:00
Pavel Feldman cfde11b6e2
docs: add a brief components doc (#13944) 2022-05-04 16:01:48 -07:00
Ross Wollman 95f7acf1e4
chore: widen Metadata type (#13942) 2022-05-04 13:16:11 -07:00
Pavel Feldman 29fd1d86df
chore: hide plugins for now (#13908) 2022-05-03 14:25:56 -07:00
Dmitry Gozman 54dd6d01e5
feat(locator): layout options (leftOf, rightOf, above, below, near) (#13821)
This also includes corresponding selector engines `left-of` and others,
modeled after existing `has` selector engine.
2022-05-03 10:33:33 +01:00
Ross Wollman 3b3cad7d69
feat: rewrite gitCommitInfo plugin, drop GlobalInfo & attachments (#13837) 2022-05-02 16:28:14 -07:00
Andrey Lushnikov bd2a2873b7
chore: unexperiment role selectors (#13858) 2022-05-02 09:32:50 -07:00
Dmitry Gozman dc3f2d26c4
docs: add details to the element screenshot methods (#13847) 2022-04-29 17:36:09 +01:00
Ross Wollman 45972a0b6a
feat: add name for plugins (#13826)
Useful for debugging and eventually for reporters to give status updates on which phase of which plugin they are currently running.
2022-04-28 11:43:39 -07:00
Pavel Feldman e756528ad2
feat(plugins): expose suite to plugin setup (#13807) 2022-04-28 08:16:17 -07:00
Ajeet Dhaliwal 5208f96d7f
docs: add Tesults reporter to test-reporters & showcase (#12720) 2022-04-27 19:37:59 +01:00
Dmitry Gozman 3aba94dbef
chore: remove unnecessary types from overrides-test (#13794) 2022-04-27 16:14:37 +01:00
Max Schmitt a0c24c01c8
chore: fix docs links for .NET roll (#13787) 2022-04-27 16:06:30 +02:00
Max Schmitt 992b47910f
docs(ci): remove providers which don't support GHA on deployment event (#13786)
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2022-04-27 16:06:19 +02:00
Pavel Feldman bc6f8e1f20
feat(poll): expose custom poll interval (#13776) 2022-04-26 21:32:38 -07:00
Ari f989e86538
docs(docker.md): add a note clarifying Docker vs. Playwright image (#13768)
Addresses feedback from #12772
2022-04-26 12:04:45 -07:00
Max Schmitt 37bee74ae5
chore: set minimum version to Node.js 14 (#13469) 2022-04-26 17:52:32 +02:00
Dmitry Gozman 00b4fb8bad
docs: describe layout selectors sorting logic (#13753) 2022-04-26 15:02:01 +01:00
Dmitry Gozman 416b56a0c8
fix: await expect.poll in docs (#13743) 2022-04-25 20:22:53 +01:00
Dmitry Gozman 97750ccf9a
feat: locator.that (#13731)
Filters existing locator by options, currently `has` and `hasText`.
2022-04-25 20:06:18 +01:00
Pavel Feldman 5e51c17d41
chore: use plugin story for components (#13717) 2022-04-25 10:40:58 -07:00
Dmitry Gozman 8e5854033a
fix: types generation for attach and GlobalInfo (#13727) 2022-04-25 13:56:37 +01:00
Dmitry Gozman d2bdb1d7cf
docs: explain label retargeting in selectors doc and some input actions (#13725) 2022-04-25 13:55:41 +01:00
Dmitry Gozman 01a8977b4d
feat: make scrollIntoView work with zero-sized elements (#13702)
We skip waiting for "visible" state that enforces non-zero size.
Other invisible conditions like "display:none" fail during the
actual "scrolling" step and will retry.
2022-04-23 21:48:36 +01:00
Ross Wollman 3eac9c694c
fix(test-runner): mark attach as async (#13687)
Also brings back generation of experimental types as part of lint.
2022-04-22 09:27:02 -07:00
Andreas Opferkuch c7212e6d56
docs(extensions): list all extension requirements (#13688) 2022-04-22 13:44:18 +02:00
Max Schmitt 4a3180aca9
chore: make Android host option configurable (#13685) 2022-04-21 22:16:42 +02:00
Sean Perkins 8c4fc62e8f
docs(test-annotations): add isMobile to typescript snippet (#13686) 2022-04-21 20:58:40 +02:00
Guriy Samarin cde7c5df44
docs(dotnet): migrate to top-level style code snippets (#13559) 2022-04-19 20:23:26 +02:00
Yury Semikhatsky 0a401b2d86
docs: clarify semantics of redirected response (#13636) 2022-04-19 09:36:38 -07:00
Mahesh Sundaram 05527bf110
docs: add example for global setup process.env (#13397)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-04-19 17:44:30 +02:00
Andrey Lushnikov 88a9262dbb
fix: resolve WebServer cwd dir wrt configDir (#13626)
Drive-by: speed-up webserver tests by not waiting 750ms to start it.

Fixes #13115
2022-04-19 07:45:36 -07:00
Yury Semikhatsky ed0dcdabc9
docs: clarify toBeDisabled behavior (#13616) 2022-04-18 17:06:01 -07:00
Meir Blachman 48a8b3fddd
fix(docs): fix typo in network (#13613) 2022-04-18 12:29:16 -07:00
Dmitry Gozman 02aa4fe617
chore: generate types for TestProject/TestConfig (#13574) 2022-04-15 10:27:38 -07:00
spaniardmaximus 05f67d27cc
docs(selectors.md): fix typo (#13569) 2022-04-14 17:36:26 -07:00
Dmitry Gozman 634f40e850
docs: expand TypeScript doc with modules and path mappings (#13567) 2022-04-14 15:02:36 -07:00
azad-derakhshani-GS 562fd989df
docs(input.md): add Locator API references (#13562)
Resolves #13561
2022-04-14 13:24:06 -07:00
Dmitry Gozman c86c2e8762
feat: restore toHaveScreenshot as experimental feature (#13549)
- Restore docs.
- Make `TestConfig.expect` generated.
- Allow experimental properties with "e" marker: `- foo e<float>`.
2022-04-14 13:22:42 -07:00
Max Schmitt 02a5417746
docs(docker): some enhancements (#13558) 2022-04-14 17:12:21 +02:00
Dmitry Gozman 20dcc45afa
feat: support experimental doc entries (#13446)
feat: support experimental doc entries

- Params/options/members are marked as experimental in the docs.
- `experimental.d.ts` is generated that contains all types and
  includes experimental features.
- `experimental.d.ts` is references in our tests so that we
  can test experimental features.
- `fonts` option is restored as experimental.
2022-04-13 16:13:30 -07:00
Andrey Lushnikov 52e326abd1
docs: release notes for 1.21 (#13491) 2022-04-11 16:53:57 -07:00
Dmitry Gozman 1e1df6395f
chore: generate expect types (#13439) 2022-04-11 10:42:19 -07:00
Yury Semikhatsky 1ee42a366d
docs: mark fetch params as optional again (#13479) 2022-04-11 10:01:32 -07:00
Ross Wollman 962361abd7
docs: fix test.step return type (#13464)
Fixes #13463.
2022-04-11 09:40:46 -07:00
Dmitry Gozman f6ccd4847e
fix(test runner): default workerIndex to -1 (#13440) 2022-04-08 15:23:23 -07:00
Ross Wollman 1af32e400f
feat(test-runner): introduce GlobalInfo (#13083) 2022-04-08 13:22:14 -07:00
kaivean d65263f151
feat(android): allow getting webviews by socket name (#13248) 2022-04-08 20:52:16 +02:00
Yury Semikhatsky 10b8a8b199
docs(java): clarify source list format (#13431) 2022-04-08 10:44:48 -07:00
Dmitry Gozman cef476b89f
docs: support optional methods (#13415)
So far, these are used in `Reporter`.
2022-04-07 18:51:05 -07:00
Andrey Lushnikov 91333daf09
chore: cut v1.21.0 (#13405) 2022-04-07 18:16:22 -07:00
Max Schmitt 5536e64538
feat(test-runner): support filtering by columns (#13401) 2022-04-07 22:45:45 +02:00
Steve Zhang de518338ce
docs: fix class-coverage snippet for v8toIstanbul (#13371)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-04-07 18:34:45 +02:00
Dmitry Gozman c68f57d2d0
docs: mark optional properties/arguments explicitly with "?" (#13369)
Previously, we were guessing whether something is optional from the
comment (looking for stuff like "defaults to" or "optional").

To remove this error-prone technique, every optional property or
argument (but not option) is explicitly marked with "?".
2022-04-06 19:02:10 -07:00
Dmitry Gozman 4123a55be5
chore: generate more types (#13358)
As a result, fix documentation issues:
- Removed `TestStep.data` that is not a thing.
- Added `TestConfig.name` documentation.
- Refined a lot of optional types in the documentation.
- Aligned `test.fail()` and `test.slow()` docs with `test.skip()`.
- Strict set of docs vs types inconsistensies in the generator
2022-04-06 13:36:20 -07:00
Akul Srivastava d9d826b7f6
docs: fixes typo (#13094)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-04-06 12:00:51 +02:00
Dmitry Gozman 4bb563b015
fix(expect): proper return types (#13334)
A few changes:
- `Matchers<R, T>` now carries both return and argument type.
- Based on the argument type, we apply playwright-specific Page/Locator matchers.
- Return type is usually void, unless wrapped with `expect.resolves`,
  `expect.rejects` or `expect.poll()`.
- To preserve compatibility with any extended types in the wild,
  argument type is optional.
2022-04-05 16:11:11 -07:00
Josep Vidal c69c74caba
docs: fix wrong input field name on GitHub auth (#13315) 2022-04-05 13:13:02 -07:00
Dmitry Gozman e31a5b690a
chore: unrelease toHaveScreenshot and screenshotsDir (#13304) 2022-04-05 08:34:51 -07:00
Max Schmitt cb4fba5e56
docs: fix toMatchSnapshot optional name usage (#13321) 2022-04-05 15:34:04 +02:00
Dmitry Gozman a09b8dfa36
chore: unrelease 'fonts' screenshot option (#13300) 2022-04-04 14:51:11 -07:00
Dmitry Gozman 4e1fb1728f
docs: small clarifications to hasText and has-text (#13298) 2022-04-04 13:18:03 -07:00
Pavel Feldman 8232497c88
feat(electron): expose app process(), detach on exit (#13280) 2022-04-04 11:50:46 -07:00
Ben Hammond 66a95c6897
docs(ci): fix typo (#13276) 2022-04-03 18:01:02 -07:00
kaivean 5d2e8918d8
feat(android): add androidDevice.options.omitDriverInstall (#13249) 2022-04-02 16:00:38 -07:00
Dmitry Gozman bba36dcae4
docs: add locator options to selectors doc (#13263) 2022-04-01 20:58:48 -07:00
Dmitry Gozman f9ae423eab
docs: attempt to fix rendering of test-timeouts page (#13256) 2022-04-01 15:06:26 -07:00
Ross Wollman 16efbdef98
chore: remove/rename FullConfig._attachments (#13233)
This was originally introduced in #12734.

It will be replaced with GlobalInfo (#13083), but not before the 1.21
release.
2022-04-01 12:36:05 -07:00
Dmitry Gozman a200fe3528
feat(screenshot): rename "size" option to "scale" (#13254)
Drive-by: fix `caret` handling in `toHaveScreenshot`.
2022-04-01 12:28:40 -07:00
Yury Semikhatsky 7d7fe3c618
fix(route): remove cors option, compare origin (#13231) 2022-03-31 19:21:21 -07:00
Dmitry Gozman e5182259b1
feat(role selector): docs and minor fixes (#13203)
- Added docs to `selectors.md`.
- `[pressed]` and `[checked]` do not match `"mixed"` states.
- Disallow `[name]` shorthand without a value.
- Renamed `includeHidden` to `include-hidden`.
2022-03-31 13:06:39 -07:00
Marcus Felling 705a994f18
docs: add VS Code extension (#12372) 2022-03-30 09:31:35 -07:00
Jim Fisher 7d734802fc
docs: explain why video has gray borders 2022-03-30 09:19:05 -07:00
Andrey Lushnikov a9989852d5
feat(vrt): new option "caret" for taking screenshots (#13164)
This has two values:
- `"hide"` to hide input caret for taking screenshot
- `"initial"` to keep caret behavior unchanged

Defaults to `"hide"`.

Fixes #12643
2022-03-29 17:48:13 -07:00
Dmitry Gozman eb09306db2
feat(connect): add connectOptions.timeout (#13163) 2022-03-29 15:03:43 -07:00
Ross Wollman bb90ab1471
docs: use case-sensitive keyword (#13136) 2022-03-28 14:16:33 -07:00
Yury Semikhatsky 5734c18ef8
feat(route): add cors header in route.fulfill (#12943) 2022-03-25 14:56:57 -07:00
Max Schmitt c8cc62a2e6
chore: add link validation for docs (#13047) 2022-03-25 19:30:45 +01:00
Andrey Lushnikov 0243bb4920
docs: refresh CI docs (#13020)
- Travis CI docs are badly rotten. I recall there was a need to
  list all the custom apt packages in the `travis.yml`, and it's a
  hassle to maintain this list for us. I remove the whole section for now
  since we don't see lots of Travis CI usage among our clients.
- Refresh other bits

Fixes #12855
2022-03-24 14:08:32 -07:00
Max Schmitt 1797c5c249
chore(test-runner): support self signed certificate in webServer (#13032) 2022-03-24 17:30:52 +01:00
Max Schmitt 434a729396
docs(dotnet): add missing Docker image (#13043) 2022-03-24 16:58:21 +01:00
Max Schmitt 81050c406e
chore: fix snippets in release-notes (#13033) 2022-03-24 07:52:04 -07:00
Dmitry Gozman 418dc9ea5d
docs(parallel): tell about fully parallel mode (#13013) 2022-03-23 16:43:46 -07:00
Dmitry Gozman 03b08c1ff9
docs(webServer): prefer url over port (#13008) 2022-03-23 16:07:30 -07:00
Andrey Lushnikov e1700bd167
feat: use package.json directory as a default for outputDir (#12942)
This patch:
- starts using directory of `package.json` to resolve default
  output directory path
- starts using either `package.json` directory or configuration
  directory to resolve all relative paths

References #12970
2022-03-23 16:05:49 -07:00
Andrew Hayward ab39cfcb18
docs: fixing example code in accessibility API docs (#12664)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-03-23 11:50:35 +01:00
Dmitry Gozman 722302799e
feat(selectors): support regular expressions in attribute selectors (#12960)
Supports inline regex in addition to string: `_react=BookItem[author = /Ann?a/i]`.
This is similar to `text=` selector, but applies to `_react` and `_vue`
selectors. In the future, will also apply to `role=` selector.
2022-03-22 17:00:56 -07:00
Ross Wollman 541fb39a51
feat(html-reporter): add report context header (#12734)
Resolves #11318.

* Adds `TestConfig.attachments` public API. (We opted to not implement an analog to the async `TestInfo.attach(…)` API.)
* Adds `TestConfig.attachments` to common reporters.
* Dogfoods some git and CI-info inference to generate useful atttachments
* Updates HTML Reporter to include a side bar to present a pre-defined set of attachments (a.k.a git/commit context sidebar)

Here's what it looks like:

<img width="1738" alt="Screen Shot 2022-03-21 at 3 23 28 PM" src="https://user-images.githubusercontent.com/11915034/159373291-8b937d30-fba3-472a-853a-766018f6b3e2.png">

See `tests/playwright-test/reporter-html.spec.ts` for an example of usage (for dogfood-ing only). In the future, if this becomes user-facing, there the Global Setup bit would likely become unnecessary (as would interaction with attachments array); there would likely just be a nice top-level config and/or CLI flag to enable collecting of info.
2022-03-22 16:28:04 -07:00
Max Schmitt 4aa7677f98
docs(dotnet): fix EvalueHandleAsync typo (#12920) 2022-03-22 16:36:21 +01:00
Yury Semikhatsky 0adf5536af
docs(fetch): clarify cookie handling (#12892) 2022-03-21 13:20:17 -07:00
Andrey Lushnikov cfe92e1608
feat(test-runner): implement expect.poll (#12815)
This patch implements `expect.poll()` method that polls given
predicate until a given synchronous predicate completes.

Usage:

```js
// wait until page gets 3 frames.
await expect.poll(() => page.frames().length, {
  timeout: 1000,
  message: 'custom error message',
}).toBe(3);
```

Fixes #10235
2022-03-18 16:31:26 -07:00
Dmitry Gozman 209bde5000
feat(test runner): descrbe.skip (#12865)
`describe.skip` declares a test group that is skipped.
2022-03-18 16:07:11 -07:00
Dmitry Gozman 25483452c0
feat(fixtures): per-fixture timeout (#12751)
By default, fixtures share timeout with the test they are instantiated for.
However, for more heavy fixtures, especially worker-scoped ones, it makes
sense to have a separate timeout.

This introduces `{ timeout: number }` option to the list of fixture options
that opts the fixture into a dedicated timeout rather than sharing it
with the test.
2022-03-17 09:36:03 -07:00
Andrey Lushnikov fa81561073
docs: remove ---disable-dev-shm-usage recommendation from docs (#12811)
We now pass this flag to chromium unconditionally.
2022-03-16 15:44:31 -07:00
Andrey Lushnikov e16f3c46b4
docs: always keep docker references up-to-date in documentation (#12795)
References #12796
2022-03-16 13:51:39 -07:00
o.mingaleev 9fc9aeeb23
docs: fixed wrong types for WebServerConfig.cwd (#12817)
Co-authored-by: Oleg Mingaleev <oleg.m@profi.io>
2022-03-16 12:14:12 +01:00
Ross Wollman 964eeba0dc
docs: remove mis-placed command (#12787) 2022-03-15 17:38:36 -07:00
Pavel Feldman 9ff9a9711d
docs: fix grep release notes (#12801) 2022-03-15 17:28:25 -07:00
Max Schmitt 61c66bb82b
docs(docker): stop advertising :focal tag (#12791)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2022-03-15 19:28:19 +01:00
Max Schmitt 01beb6310a
docs: mention locator.nth is zero based (#12750)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2022-03-14 21:06:44 +01:00
Max Schmitt fff4681c6c
docs: fix broken release-notes links (#12747) 2022-03-14 12:25:26 -07:00
Andrey Lushnikov cd81fc9945
docs(release-notes): fix release notes for .net (#12743) 2022-03-14 11:04:59 -07:00
Andrey Lushnikov b7e92a44cb
docs: add release notes for all other languages (#12596)
Drive-by:
- backport removal of toHaveScreenshot from release 1.20
- change webkit 10.15 announcement
2022-03-14 10:52:52 -07:00
Yury Semikhatsky 19de9cacc3
docs: delete verification guide (#12698) 2022-03-12 09:32:54 -08:00
Max Schmitt d15910b450
docs(test-runner): add note about custom annotations (#12681)
o-authored-by: Dmitry Gozman <dgozman@gmail.com>
2022-03-11 19:09:23 +01:00
Andrey Lushnikov e3ab6388a9
feat(toHaveScreenshot): enable sensible defaults (#12675)
This patch:
- Enables configuration of certain defaults for some options of `expect.toHaveScreenshot` method via `TestProject.expect.toHaveScreenshot` property
- Sets sensible defaults for these options:
  * `fonts: "ready"`
  * `animations: "disabled"`
  * `size: "css"`
2022-03-11 08:45:36 -08:00
Yury Semikhatsky 9d4f330411
docs: fix python link to test-assertions (#12665) 2022-03-11 08:28:06 -08:00
Andrey Lushnikov b51157bdea
feat: bring back maxDiffPixels in toMatchSnapshot (#12627)
This patch reverts 2 commits that removed the feature from the method:
- "fix: explicitly ignore maxDiffPixels in toMatchSnapshot (#12570)"
  commit b8af8458d6.
- "chore: remove `maxDiffPixels` from toMatchSnapshot (#12539)"
  commit a3dff45974.
2022-03-10 18:41:16 -08:00
Andrey Lushnikov 42765804bc
chore: add "allow" as a default value for animations. (#12663) 2022-03-10 17:15:36 -08:00
Andrey Lushnikov 49e66c7f08
feat(screenshot): introduce new "fonts" option for screenshots (#12661)
This option will wait for webfonts to load before taking screenshots.
2022-03-10 16:54:36 -08:00
Andrey Lushnikov 12d8a262be
feat: support screenshotsDir option (#12642)
The `screenshotsDir` option controls the expectation storage
for `toHaveScreenshot()` function.

The new expectation management for screenshots has the following
key properties:
- All screenshots are stored in a single folder called `screenshotsDir`.
- Screenshot names **do not** respect `snapshotDir` and `snapshotSuffix`
  configurations.
- `screenshotsDir` is configurable per project. This way a "smoke tests"
  project can re-use screenshots from "all tests" project.
- Host platform is a top-level folder.

For example, given the following config:

```js
// playwright.config.ts
module.exports = {
  projects: [
    { name: 'Mobile Safari' },
    { name: 'Desktop Chrome' },
  ],
};
```

And the following test structure:

```
smoke-tests/
└── basic.spec.ts
```

Will result in the following screenshots folder structure by default:

```
__screenshots__/
└── darwin/
    ├── Mobile Safari/
    │   └── smoke-tests/
    │       └── basic.spec.ts/
    │           └── screenshot-expectation.png
    └── Desktop Chrome/
        └── smoke-tests/
            └── basic.spec.ts/
                └── screenshot-expectation.png
```
2022-03-10 16:50:26 -08:00
Yury Semikhatsky 10bf5f3e49
docs: update links to assertions docs (#12662) 2022-03-10 15:45:18 -08:00
Yury Semikhatsky cf643ff04c
docs: remove unsupported permission "push" from docs (#12654) 2022-03-10 14:00:25 -08:00
Max Schmitt 324e3ff3ae
docs: add .NET as a new Docker image (#12659) 2022-03-10 22:20:04 +01:00
Dmitry Gozman a388bb2302
feat(screenshot): size:'css'|'device' option (#12634)
With this experimental option, screenshot dimensions are in CSS pixels,
not physical device pixels, effectively ignoring the device scale factor.
2022-03-10 13:07:10 -08:00
Max Schmitt 49fd77d9af
docs: reference to external allure reporter (#12646) 2022-03-10 09:01:42 -08:00
Yury Semikhatsky e270adf437
docs: fix broken link (#12638) 2022-03-09 22:00:16 -08:00
Yury Semikhatsky 5f1188d195
docs: fix js example formatting (#12635) 2022-03-09 17:10:37 -08:00
Yury Semikhatsky 176846672f
docs: clarify multiple before/after hooks execution order (#12606) 2022-03-08 17:42:50 -08:00
Yury Semikhatsky 79c8746fd2
docs: add name for screenshot animations option (#12601) 2022-03-08 16:02:31 -08:00
Yury Semikhatsky 03150265db
docs: update POM guide (#12598) 2022-03-08 14:01:50 -08:00
Meir Blachman 7e53facf1e
docs: Update pom.md to use locators (#12592) 2022-03-08 21:39:40 +01:00
Max Schmitt 30c954a3ba
docs: add Docker image for Python (#12595) 2022-03-08 21:21:46 +01:00
Andrey Lushnikov 422df4cbbe
docs: add js release notes for 1.20 (#12575) 2022-03-08 12:15:55 -08:00
Yury Semikhatsky e3e29e25be
docs: update links to assertions class (#12562) 2022-03-07 10:37:36 -08:00
Max Schmitt 5ca7858ace
docs: use npm init @latest (#12561) 2022-03-07 19:30:03 +01:00
Andrey Lushnikov a3dff45974
chore: remove maxDiffPixels from toMatchSnapshot (#12539)
References #12441
2022-03-04 18:27:04 -08:00
Andrey Lushnikov 4953fc4845
chore: introduce toHaveScreenshot configuration options (#12507)
References https://github.com/microsoft/playwright/issues/12441
2022-03-04 17:30:43 -08:00
Karan Shah fd1a1a2b1c
feat(android): Adding custom port parameter to connect to different adb server port (#12220) 2022-03-04 20:27:25 +01:00
Matt Butler 4d34815c36
docs(test-auth-js.md): remove unnecessary export (#12520) 2022-03-04 11:09:41 -08:00
Andrey Lushnikov b45c788a33
fix(disable-animations): rename boolean to enum (#12503)
Enums are more flexible in the long run since they let us easily
extend API.

References #12441
2022-03-04 11:02:59 -08:00
Andrey Lushnikov 279e579097
chore: address pixelCount and pixelRatio review comments (#12501)
- documentation fixes
- rename pixelCount to maxDiffPixels
- rename pixelRatio to maxDiffPixelRatio
2022-03-03 23:17:31 -08:00
Max Schmitt fc32ec9944
docs: fix wrong nesting level in test-parameterize.md (#12499) 2022-03-04 00:07:59 +01:00
Max Schmitt 42b9fc1cd9
docs(dotnet): move Expect to method on harness (#12498) 2022-03-03 23:05:13 +01:00
Max Schmitt 96a6cbbe58
docs: update verification.md web-first-assertions redirect warning (#12495)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2022-03-03 22:39:30 +01:00
Yury Semikhatsky b96bbc6ad7
docs: simplify test-assertions.md, avoid duplication (#12475) 2022-03-03 10:06:14 -08:00
Max Schmitt c2b6614e41
docs: add CSV guide for the test-runner (#12488) 2022-03-03 18:36:12 +01:00
Yury Semikhatsky 5db93e6ddf
docs: asertions.not is a property (#12474) 2022-03-02 15:03:33 -08:00
Pavel Feldman 34bf0d4b87
feat(test-runner): allow grepping in project (#12469) 2022-03-02 15:02:35 -08:00
Max Schmitt 77db87b6f5
docs: fix empty Docker images on languages (#12473) 2022-03-02 23:43:22 +01:00
Yury Semikhatsky a413c0f94c
docs: restore assertions timeout option in js (#12467) 2022-03-02 12:43:16 -08:00
Pavel Feldman 4b19d59ec5
feat(test): introduce fully parallel mode (#12446) 2022-03-01 18:12:21 -08:00
Pavel Feldman 61a6cdde70
feat(api): expose locator.highlight (#12420) 2022-03-01 13:56:21 -08:00
Andrey Lushnikov 396d920145
feat(test-runner): implement expect(pageOrLocator).toHaveScreenshot (#12242)
Fixes #9938
2022-02-28 12:25:59 -08:00
Max Schmitt b8728248fa
docs: merge assertions with verification doc (#12361) 2022-02-25 22:58:41 +01:00
Max Schmitt 2f0183dd1d
docs(cli): add --width-deps to the docs (#12362) 2022-02-25 19:26:32 +01:00
Max Schmitt c1a1eaec34
docs(trace-viewer): viewing remote traces on trace.playwright.dev (#12363) 2022-02-25 19:23:39 +01:00
Max Schmitt 5be9f68446
docs: fix broken docs by wrong snippet lang (#12306) 2022-02-23 14:35:40 +01:00
Dmitry Gozman 26d6537119
docs: document environment variables usage (#12294) 2022-02-22 15:24:35 -08:00
Max Schmitt b08000e7c2
docs: advertise how to enable sources with tracing (#12273) 2022-02-22 20:16:05 +01:00
Max Schmitt 52932172e7
docs(python): fix set_viewport_size in emulation.md (#12271) 2022-02-22 20:15:46 +01:00
Max Schmitt 17a922cf5e
docs: fix expect custom matcher global.d.ts (#12268) 2022-02-22 11:09:52 -08:00
Max Schmitt 768242db12
docs(dotnet): enable web-first assertions (#12113) 2022-02-21 14:01:53 +01:00
Yury Semikhatsky a16eaf584a
docs: mock guide (#12241) 2022-02-18 18:28:03 -08:00
Dmitry Gozman a7ef1da5e9
fix(selenium): support MicrosoftEdge (#12235) 2022-02-18 14:44:15 -08:00
Rebely22 7696fec1fa
docs: selectors.md fix code parentheses misplaced (#12210) 2022-02-18 10:33:24 +01:00
Andrey Lushnikov a98babec69
feat(test-runner): introduce pixelCount and pixelRatio options (#12169)
This patch adds additional options to `toMatchSnapshot` method:
- `pixelCount` - acceptable number of pixels that differ to still
  consider images equal. Unset by default.
- `pixelRatio` - acceptable ratio of all image pixels (from 0 to 1) that differ to still
  consider images equal. Unset by default.

Fixes #12167, #10219
2022-02-17 15:44:03 -08:00
Andrey Lushnikov 086333cd60
feat(test-runner): support unnamed snapshots (#12161)
Fixes #9007
2022-02-16 14:22:01 -08:00
Andrey Lushnikov 363b8a6970
feat: support mask option in screenshot methods (#12072)
Fixes https://github.com/microsoft/playwright/issues/10162
2022-02-15 07:05:05 -08:00
Max Schmitt 7e7996a7b7
chore(dotnet): do not use global CLI and use ps1 instead (#12025)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2005
2022-02-11 11:26:16 -08:00
Andrey Lushnikov 619d1d8617
docs: add release notes for all the languages (#12045) 2022-02-11 11:24:14 -08:00
Andrey Lushnikov 46b89f109a
docs: fix release notes headers (#12036) 2022-02-11 09:13:55 -08:00
Andrey Lushnikov 979fa2b2f0
docs: add release notes for 1.19 (#12019) 2022-02-11 08:23:59 -08:00
Max Schmitt 2815180162 docs(python): enable Route.fulfill.response 2022-02-11 15:26:02 +01:00
Andrey Lushnikov 3c88d4126c
docs: move common screenshot options to params.md (#12008) 2022-02-10 12:31:17 -08:00
Ross Wollman 00e8a6440d
docs(selectors.md): React selector nit (#12010)
See https://github.com/microsoft/playwright/pull/11970#discussion_r803212908.

In the future, I'd like to think through some more extensive examples to make React selector best practices more explicit in the docs.
2022-02-10 12:27:37 -08:00
Erik Ejlskov Jensen 1df07aa2cf
docs: avoid .net version ambiguity (#12003) 2022-02-10 09:30:44 -08:00
Andrey Lushnikov 6f87955243
feat: introduce disableAnimations option for screenshots (#11870)
This option stops all kinds of CSS animations while doing screenshot:
- CSS animations
- CSS transitions
- Web Animations

Animations get different treatment depending on animation duration:
- finite animations are fast-forwarded to its end, issuing the
  `transitionend` event.
- Infinite animations are resetted to its beginning, and then
  resumed after the screenshot.

References #9938, fixes #11912
2022-02-09 12:52:11 -08:00
Darío Kondratiuk 48cc41f3e7
feat: add key support on react engine (#11970)
I've got [this question](https://stackoverflow.com/questions/71050193/react-locator-example/71052432#71052432) on StackOverflow. And although, in that case, the `key` was part of the `props` attributes. That might not always be true.

I am bringing this to the tell to see what you think about this.
I'm also fixing a typo :)
2022-02-09 11:33:15 -08:00
Max Schmitt 460d51284c
docs: missing $ in PowerShell shell command (#11966) 2022-02-09 08:58:21 -08:00
Dmitry Gozman 19368e93af
feat(test runner): support connectOptions (#11919)
This allows to specify `connectOptions` in the config that
switch built-in `browser` to be remotely connected.
2022-02-08 20:45:42 -08:00
Dmitry Gozman e92caf01b3
fix(webServer): do not set baseURL equal to webServer.url (#11951) 2022-02-08 15:57:36 -08:00
Andrey Lushnikov 6d7321e211
docs: update docs on expects (#11949) 2022-02-08 14:44:44 -08:00
Pavel Feldman 4bcca2c87e
chore: add a parallel mode note (#11943) 2022-02-08 14:36:14 -08:00
Dmitry Gozman 9e08b97b69
docs: restore expect docs in the guide (#11946) 2022-02-08 13:15:17 -08:00
Pavel Feldman 3a898c285e docs: fix python snippet 2022-02-08 08:02:28 -08:00
Yury Semikhatsky 46dfa45b4e
docs: fix parallel test docs build (#11877) 2022-02-04 16:44:04 -08:00
Yury Semikhatsky afc4b505aa
docs: fix duplicate sections (#11874) 2022-02-04 13:50:46 -08:00
Aarni Koskela 6881db6817
docs: fix typo in Python APIRequestContext example (#11861)
`playwright.chromium` should be `p.chromium`, etc.
2022-02-04 16:36:30 +01:00
Pavel Feldman fdda759a9d
feat(parallel): allow setting enclosing scope parallel mode (#11822) 2022-02-02 20:44:11 -08:00
Andrey Lushnikov ba0c7e679b
feat(test-runner): support expect.soft (#11800)
Soft expects will still fail the test, but will not abort it's execution. As a consequence of this:
-  `TestResult` now might have multiple errors, which is reflected with a new `testResult.erros: TestError[]` field.
- `TestInfo` now might have multiple errors as well, which is reflected with a new `testInfo.errors: TestError[]` field.

Fixes #7819
2022-02-02 18:33:51 -08:00
Dmitry Gozman f587a43932
feat(locator): "has" option (#11411)
This introduces `locator('div', { has: locator })` syntax that matches elements containing other elements.
Can be used together with `hasText`.

Internally, has selector engine takes an inner selector escaped with double-quotes:
`div >> has="li >> span >> text=Foo" >> span`.
2022-02-02 16:55:50 -08:00
Leonardo Henrique Tsuda de8f22a8ff
docs(selectors.md): fix fill and FillAsync examples (#11790) 2022-02-02 12:10:34 -08:00
Sanghyeon Lee 731931ae58
docs(test-timeouts-js.md): fix inconsistent style of 'override' (#11766) 2022-02-01 15:59:30 -08:00
Pavel Feldman 6e2fcc4700
chore: do not expose suite load error (#11797) 2022-02-01 15:34:16 -08:00
Yury Semikhatsky e7bd62f202
docs(electron): minimal version (#11792) 2022-02-01 14:45:30 -08:00
Dmitry Gozman 4a52bc9465
docs: add option fixtures section to release notes (#11794) 2022-02-01 14:34:47 -08:00
Max Schmitt e7120d2ca2
docs(python): add API testing guide (#11775) 2022-02-01 21:44:43 +01:00
Caio Agiani b6b60decdf
fix: typos (#11789) 2022-02-01 11:09:41 -08:00
Andrey Lushnikov 2336692e8a
feat: support clarification message for expect (#11735)
The clarification message is displayed in the HTML report as the name of the step:

![image](https://user-images.githubusercontent.com/746130/151852652-48194140-5ea4-439d-afee-12583a8caf71.png)

It is also shown in terminal output:

![image](https://user-images.githubusercontent.com/746130/151852666-5c956ef1-6e94-4bc2-8e55-b58688dfc7e0.png)

Fixes #7816
2022-01-31 17:14:59 -08:00
Pavel Feldman 2b55adaafa
feat(breaking): always report onBegin/onEnd, report file errors (#11758) 2022-01-31 17:09:04 -08:00
Yury Semikhatsky 129d9d3643
docs(tracing): clarify capture semantics (#11756) 2022-01-31 11:44:10 -08:00
William Bergeron-Drouin 5a14aad368
docs: fix instructions for custom matchers type declarations (#11483)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-01-31 18:58:45 +01:00
Leonardo Henrique Tsuda 7dc2dce709
fix response status assertion on python example (#11723) 2022-01-28 11:50:14 -08:00
Meir Blachman 5cbedf8823
docs: fix frame locator docs for python sync (#11689) 2022-01-28 16:41:13 +01:00
Yury Semikhatsky b436fbbbf4
docs(java): route.fulfill with APIResponse (#11711) 2022-01-27 15:43:38 -08:00
campersau 791860f31c
Update auth.md (#11700) 2022-01-27 22:07:47 +01:00
Feng Yu 0698254253
docs: fix broken link (#11687)
fix #11680
2022-01-27 13:00:09 -08:00
Dmitry Gozman d4360cf7c0
chore: fix docs generator (#11665) 2022-01-26 16:46:16 -08:00
Andrey Lushnikov 45fc509c6a
docs: fix missing fence close (#11664)
Follow-up to 0e7e63f09f
2022-01-26 16:39:36 -08:00
divdavem 512a245f13
feat(test-runner): wait for a url before starting tests (#10138)
The webServer configuration in @playwright/test now accepts a url as an
alternative to a port number to wait for a url to return a 2xx status code.
2022-01-26 16:32:58 -08:00
Andrey Lushnikov d68f2f4990
docs: fix intro example (#11658)
Fixes #11652
2022-01-26 13:31:48 -08:00
Max Schmitt 0e7e63f09f
docs(dotnet): bundle driver for different platforms (#11643) 2022-01-26 21:26:51 +01:00
Max Schmitt 97b975b5ec
docs(dotnet): add API to run CLI commands (#11641) 2022-01-26 20:43:44 +01:00
Max Schmitt 5a061c528c
docs(network): fix typo quests -> requests (#11651)
Fixes #11650
2022-01-26 09:54:01 -08:00
Dmitry Gozman 687a16b848
feat(locator): introduce locator.page() getter (#11630) 2022-01-26 07:58:58 -08:00
Max Schmitt a13f71d328
docs(python): enable Python response assertions (#11609) 2022-01-25 18:53:49 +01:00
Max Schmitt 431b57eb50
docs(java): fix broken link in release notes (#11511) 2022-01-20 14:31:54 +01:00
olexandr13 92e990bc6a
docs: fix typo chome > chrome (#11512) 2022-01-20 14:14:25 +01:00
Max Schmitt 94495c3253
docs(python): fix typo in release notes (#11507) 2022-01-20 04:36:41 -08:00
Andrey Lushnikov 7d924470d3
docs: drop cookbook reference from notes (#11488)
It's not yet ready for the prime time.
2022-01-19 10:46:59 -08:00
Andrey Lushnikov 82c8baf9f6
docs: add Java 1.18 release notes (#11477) 2022-01-19 09:25:52 -08:00
Andrey Lushnikov 7f4ad31627
docs: add .NET 1.18 release notes (#11479) 2022-01-19 07:30:49 -08:00
Andrey Lushnikov 7b7d63ab64
docs: add Python 1.18 release notes (#11478) 2022-01-19 07:30:03 -08:00
Max Schmitt 4fa7aa0ff7
docs(python): enable tracing sources collection (#11453) 2022-01-18 13:05:59 +01:00
David Seow 59b677139e
docs(selectors): gramamatical tweaks (#11433) 2022-01-17 18:44:45 -08:00
Max Schmitt 4a1f945a3b
docs(dotnet): fix intro with old PowerShell version (#11434) 2022-01-18 00:28:53 +01:00
Max Schmitt 60e7caf91c
docs(dotnet): enable collecting tracing sources (#11410) 2022-01-16 17:57:01 +01:00
Ruslan Makarov c4f43b4534
docs: typographical error correct #11425 (#11426) 2022-01-15 16:31:52 -08:00
Andrey Lushnikov 0b040e5abd
docs: fix release notes docs (#11407) 2022-01-14 10:05:03 -08:00
Andrey Lushnikov 573d9fea06
docs: commit release notes for 1.18 (#11396) 2022-01-14 03:56:34 -08:00
Max Schmitt badb5b4d13
chore(pw-test): forward web-server stdout to debug target (#11384) 2022-01-13 23:55:46 +01:00
Dmitry Gozman 73fed66896
docs: add comments to Promise.all snippets with explanation (#11379)
Drive-by: more locators.
2022-01-13 10:38:22 -08:00
Andrey Lushnikov 2a0930c7a4
docs: clarification about trailing slash in docs (#11326)
Fixes #10557
2022-01-11 07:50:58 -08:00
Vernon Thommeret 7bf0e28bc7
docs: Add installing project dependencies / uploading test results (#11285) 2022-01-10 13:30:55 -08:00
Dmitry Gozman 14fd837e94
fix(test runner): hide beforeAll/afterAll hooks from the reporter api (#11306)
This api is not ready yet.
2022-01-10 12:09:51 -08:00
Max Schmitt 913edf9bdb
docs(python): fix wrong code snippet to get pages (#11260) 2022-01-07 17:00:54 -08:00
Pavel Feldman 303d49e8de
docs: add a toHaveClass hint (#11249) 2022-01-07 09:13:46 -08:00
Yury Semikhatsky 670d6c3e27
docs: range boundary for [200..299] (#11232) 2022-01-06 15:46:08 -08:00
Yury Semikhatsky d629fe57ab
docs: make toBeOK async, expose in java (#11227) 2022-01-06 14:40:44 -08:00
Max Schmitt d49bf00183
docs: enable BrowserType.connect in .NET (#10985) 2022-01-06 15:26:33 -05:00
Dmitry Gozman 3ecac56cc0
fix(test runner): testInfo.attach api review changes (#11211)
Remove overload, require name, merge options.
2022-01-05 16:39:33 -08:00
Yury Semikhatsky 576a9c1ae3
docs(java): api testing guide (#11185) 2022-01-05 13:02:46 -08:00
Pavel Feldman a0aeaeb929
test: expose repeatEachIndex (#11158) 2022-01-03 17:29:54 -08:00
spaniardmaximus dbac5a5298
docs(selectors.md and locators.md): Fixed typos and added missing words (#11088) 2021-12-23 13:32:28 -08:00
Dmitry Gozman 0d277fa589
fix(selenium): allow setting additional capabilities (#11000)
Also clarify docs about Selenium v4.
2021-12-17 11:33:24 -08:00
Aarjith Nandakumar 64c3b189c4
docs(intro): fix optionally install browsers url (#11001) 2021-12-17 11:14:05 -08:00
Yury Semikhatsky 1dd8325c9a
docs(java): add API for providing source locations (#10998) 2021-12-17 10:50:47 -08:00
Yury Semikhatsky 0eaa19d5e7
docs(expect): APIResponse assertions (#10957) 2021-12-16 11:27:30 -08:00
Dmitry Gozman 0d54afab9c
feat(test runner): show beforeAll/afterAll hooks similar to tests (#10923)
Reporters now get notified about hooks start/end/steps.
2021-12-15 10:39:49 -08:00
Pavel Feldman 04e82ce71c
feat(api): make withText an option (#10922) 2021-12-14 15:37:31 -08:00
Max Schmitt e775494991
docs: enable BrowserType.connectOverCDP in .NET (#10903) 2021-12-13 18:41:15 -08:00
Max Schmitt dd41cb54a8
docs: Assert.Equal -> Assert.AreEqual (#10902) 2021-12-13 18:41:06 -08:00
Dmitry Gozman 486ca66fd0
docs: add "test order" section (#10895) 2021-12-13 15:16:59 -08:00
Nico Jansen 683dc4eeac
docs(protracor): add a simpler "awaitForAngular" (#10834) 2021-12-10 12:00:21 -08:00
Dmitry Gozman 308c7b4e32
docs: update test advanced guides (#10861)
Linking to the API reference, using better examples and newer docs.
2021-12-10 11:15:01 -08:00
Pavel Feldman 8cc862c614
docs(dotnet): suggest using pwsh (#10844) 2021-12-09 17:14:30 -08:00
Yury Semikhatsky 4621f61c7d
docs: converting Locator to FrameLocator (#10839) 2021-12-09 15:21:04 -08:00
Dmitry Gozman 897e41c6c1
docs: document TestOptions.video.size (#10827) 2021-12-09 07:38:58 -08:00
Pavel Feldman 04aa38a663
docs: nit fixes (#10805) 2021-12-08 12:49:50 -08:00
Yury Semikhatsky e9d0b5ee1d
docs: fix locator screenshot examples (#10794) 2021-12-08 12:38:59 -08:00
Max Schmitt 2e956aa0d1 Revert "docs: use correct name for React component naming capitalisation (#10798)"
This reverts commit cfd4404756.
2021-12-08 12:14:11 -08:00
Pavel Feldman ce56d7d10b
docs(.net): update installation docs (#10796) 2021-12-08 11:07:01 -08:00
Pavlo Zhukov cfd4404756
docs: use correct name for React component naming capitalisation (#10798) 2021-12-08 11:03:47 -08:00
Pavel Feldman 917924d279
docs: extract locators doc (#10795) 2021-12-08 09:54:01 -08:00
Max Schmitt 5ba7903ba0
devops: migrate from master to main branch (#10303) 2021-12-07 22:58:33 -08:00
Pavel Feldman 5d10fbd3d8
chore: add more playwright.locator mentions (#10763) 2021-12-07 13:48:36 -08:00
Pavel Feldman c9220801e7
feat(cli): add locator methods to the cli api (#10746) 2021-12-07 12:32:11 -08:00
Pavel Feldman 7765131a14
feat(acceptDownload): revert acceptDownload (#10709) 2021-12-06 09:25:24 -08:00
Pavel Feldman 518d67add5
feat(test.info): expose information on the currently running test (#10708) 2021-12-06 09:25:11 -08:00
Ross Wollman 6aab64b02a
docs(reporters): fix TS example (#10723) 2021-12-06 09:03:25 -08:00
Pavel Feldman f583f1604c
feat(locator.withText): allow narrowing locators to those with text (#10688) 2021-12-03 09:27:06 -08:00
Pavel Feldman 3daf008067
docs(locator): add section on working with the lists (#10651) 2021-12-02 20:29:38 -08:00
Dmitry Gozman 98e2f40bb0
docs: replace TestCase.suite with TestCase.parent (#10687)
It is there by mistake.
2021-12-02 14:24:43 -08:00
Pavel Feldman 31e0a63fcd
feat(toBeChecked): allow passing checked: false (#10665) 2021-12-02 10:31:26 -08:00
Pavel Feldman 056d0cb5c1 docs: minor fix 2021-11-30 17:34:58 -08:00
Max Schmitt d08dfdf532
docs(python): add assertion examples (#10532) 2021-11-30 20:04:44 +01:00
Max Schmitt 3337920c76
docs: clarify webServer ipv4/ipv6 and baseURL protocol (#10610) 2021-11-30 20:01:28 +01:00
Max Schmitt 24400a3d48
docs(intro-java): bump Java to 1.17.1 (#10609) 2021-11-30 16:15:50 +01:00
Pavlo Zhukov 71adefc814
docs(selectors): add missing closing backquote (#10601) 2021-11-30 13:01:25 +01:00
Max Schmitt 293c233a49
docs(test-runner): add webServer (#10531) 2021-11-29 18:01:14 +01:00
Max Schmitt af28a779be
docs: migrate JS assertions over to Java/Python assertions (#10431) 2021-11-24 21:58:35 +01:00
Max Schmitt af4a1c2d26
docs(python): add request API examples (#10512) 2021-11-24 21:55:03 +01:00
Max Schmitt 8fa0a87f1f
docs: reference to hosted trace viewer (#10515) 2021-11-24 21:50:41 +01:00
Max Schmitt 685892dd62
docs(intro-js): reference to create-playwright (#10516) 2021-11-24 21:09:33 +01:00
Dmitry Gozman fc9747b1df
docs: fix markup in test-timeouts (#10502) 2021-11-23 14:44:03 -08:00
Ross Wollman 854f321532
feat(api): add explicit async testInfo.attach (#10121)
feat(api): add explicit async testInfo.attach

We add an explicit async API for attaching file paths (and Buffers) to
tests that can be awaited to help users ensure they are attaching files
that actually exist at both the time of the invocation and later when
reporters (like the HTML Reporter) run and package up test artifacts.

This is intended to help surface attachment issues as soon as possible
so you aren't silently left with a missing attachment
minutes/days/months later when you go to debug a suddenly breaking test
expecting an attachment to be there.

NB: The current implemntation incurs an extra file copy compared to
manipulating the raw attachments array. If users encounter performance
issues because of this, we can consider an option parameter that uses
rename under the hood instead of copy. However, that would need to be
used with care if the file were to be accessed later in the test.
2021-11-23 09:30:53 -08:00
Alister Scott 80235c47a5
docs(test-parameterize): fixed typo (#10392) 2021-11-22 20:38:48 +01:00
Joel Einbinder d70e37de80
feat: locator.dragTo (#10287) 2021-11-22 20:27:26 +01:00
Dmitry Gozman e647f0420c
docs: add more references to TestInfo.retry (#10472) 2021-11-22 10:06:20 -08:00
Max Schmitt eaee864b2c
docs: python assertion type fixes (#10465) 2021-11-22 18:39:10 +01:00
Dmitry Gozman fde2f6a77f
docs: separate doc for test timeouts (#10448) 2021-11-19 17:06:46 -08:00
Yury Semikhatsky 9fed8a9344
docs(api): redo request API for java (#10449) 2021-11-19 16:40:35 -08:00
Dmitry Gozman 4eaeb3b59c
docs: explain that beforeAll/afterAll run again in the new worker process (#10446) 2021-11-19 13:47:30 -08:00
Dmitry Gozman 0302e759df
feat(test runner): allow top-level test.fixme similar to test.skip (#10250)
```js
test.fixme('my test name', () => {});
```
2021-11-19 11:40:40 -08:00
Dmitry Gozman 19f739dec8
docs: update fixtures doc (#10426)
- Introduction
  - Built-in fixtures
  - Without fixtures
  - With fixtures
- Creating a fixture
- Using a fixture
- Overriding fixtures
- Worker-scoped fixtures
- Automatic fixtures
- Fixtures-options
2021-11-18 21:35:21 -08:00
Dmitry Gozman d9f849fb14
feat(test runner): replace declare/define with "options" (#10293)
1. Fixtures defined in test.extend() can now have `{ option: true }` configuration that makes them overridable in the config. Options support all other properties of fixtures - value/function, scope, auto.
```
const test = base.extend<MyOptions>({
  foo: ['default', { option: true }],
});
```

2. test.declare() and project.define are removed.

3. project.use applies overrides to default option values and nothing else. Any test.extend() and test.use() calls take priority over config options.

Required user changes: if someone used to define fixture options with test.extend(), overriding them in config will stop working. The solution is to add `{ option: true }`.

```
// Old code
export const test = base.extend<{ myOption: number, myFixture: number }>({
  myOption: 123,
  myFixture: ({ myOption }, use) => use(2 * myOption),
});

// New code
export const test = base.extend<{ myOption: number, myFixture: number }>({
  myOption: [123, { option: true }],
  myFixture: ({ myOption }, use) => use(2 * myOption),
});
```
2021-11-18 15:45:52 -08:00
Nav-2d 82edd1f4b2
docs/test-configuration: Update code snippet (#10355) 2021-11-18 15:38:18 -08:00
Andrey Lushnikov 5eba6d538f
docs: land 1.17 release notes (#10425) 2021-11-18 15:08:49 -08:00
Max Schmitt 0781d0303b
docs(python): enable web-first assertions (#10390) 2021-11-18 00:46:30 +01:00
Dmitry Gozman 6e2bc890a6
docs: add links from annotations to respective methods (#10379) 2021-11-17 11:03:30 -08:00
Yury Semikhatsky 565ac910e7
docs(api): expose request API in java (#10331) 2021-11-15 14:54:07 -08:00
Yury Semikhatsky c5cb73003f
docs: OR for css and xpath selectors (#10285) 2021-11-15 13:54:12 -08:00
browse 5d4ec1d512
docs(python): fix incorrect snippet syntax (#10314) 2021-11-15 11:20:46 +01:00
Yevhen Laichenkov 724dc2ff2f
docs(test-parameterize): fix snippet typo (#10280) 2021-11-12 07:00:41 -08:00
Nav-2d 58b4052378
docs/test-config: add github, html reporter (#10234) 2021-11-12 06:50:56 -08:00
Max Schmitt d97fe4e2af
docs(test-parameterize): fixed snippet typo (#10276) 2021-11-12 05:50:45 -08:00
Max Schmitt 24cfcf867e
chore: create-playwright config nits & test-runner intro docs (#10253) 2021-11-11 22:45:07 +01:00
Dmitry Gozman 9622704a8a
fix(test runner): update TestInfo.duration before running afterEach hooks (#10228) 2021-11-10 16:02:27 -08:00
Pavel Feldman 1e38ec5fa4
docs(element-handle): discourage the element handle use (#10220) 2021-11-10 11:30:25 -08:00
Pavel Feldman 4e90eb9406
api(frame-locator): allow nth, first, last (#10195) 2021-11-09 14:14:20 -08:00
Yury Semikhatsky c30447216d
docs(fetch): typo in comment (#10160) 2021-11-09 14:00:58 -08:00
Dmitry Gozman 7bb38d2ac8
docs: use desktop devices in sample configs (#10197) 2021-11-09 13:19:21 -08:00
Yury Semikhatsky 031ceb3553
docs(java): assertion examples (#10194) 2021-11-09 12:44:02 -08:00
Pavel Feldman 1bf7f6d90d
docs: expand core-concepts and multi-age (#10161) 2021-11-09 07:42:04 -08:00
Max Schmitt 1a7fb912e4
docs(python): enable request API (#10179) 2021-11-09 14:04:34 +01:00
Dmitry Gozman 5c9dcffd67
docs(intro): rework js intro (#10157)
- Educate on the config file right away.
- Switch from `--browser` to `--project`.
- Update configuration sections.
2021-11-08 17:50:48 -08:00
Pavel Feldman 7b64161a37
feat(test-runner): allow specifying fine-grained trace options (#10147) 2021-11-08 15:39:58 -08:00
Dmitry Gozman 0a104bc500
docs: clarify that slow tests are about files (#10134) 2021-11-08 12:54:18 -08:00
Yury Semikhatsky ac25a67140
docs(java): assertion docs fixes (#10144) 2021-11-08 11:31:11 -08:00
Dmitry Gozman 9a7b4b745b
docs: Suite.project is a method, not a property (#10135) 2021-11-08 10:08:46 -08:00
Pavel Feldman 4553d76fce
api(frame-locator): introduce frame locators (#10102) 2021-11-08 09:58:24 -08:00
Yury Semikhatsky 4c53824235
docs: committed navigation (#10023) 2021-11-03 15:26:25 -07:00
Yury Semikhatsky bce9a8187d
fix(fetch): post data for delete request (#10019) 2021-11-03 13:26:15 -07:00
Max Schmitt bde5c2590e docs: fix minor release note typos 2021-11-03 20:51:47 +01:00
Dmitry Gozman 9cebe60831
feat(reporters): augment non-stdio reporters with dot/line (#10003) 2021-11-03 08:25:16 -07:00
Yury Semikhatsky 64a2be0e43
docs(java): message loop, Thread.sleep vs waitForTimeot (#9978) 2021-11-02 10:17:35 -07:00
Max Schmitt bedb817a00
docs(test-runner): worker fixtures only in before/after-All (#9967) 2021-11-02 16:51:41 +01:00
Max Schmitt b8b4f904b2
docs(auth): fix session storage restore snippets (#9970) 2021-11-02 16:51:22 +01:00
Nick Partridge a51ac39275
feat: add snapshotDir to set base snapshot directory (#9260) 2021-11-02 08:02:49 -07:00
Pavel Feldman 56ca3a18f5
feat(trace-viewer): show test name (#9957) 2021-11-01 21:23:35 -07:00
Pavel Feldman 85497c5509
feat(tracing): allow including source files in traces (#9946) 2021-11-01 19:57:29 -07:00
Yury Semikhatsky 13cc266b37
feat: add "commit" to possible waitUntil options (#9892) 2021-11-01 17:12:19 -07:00
Dmitry Gozman 4f1027bdd0
feat(test runner): introduce TestInfo.parallelIndex (#9762)
This is a worker number between `0` and `workers - 1` that
does not change after worker process restart.
2021-11-01 10:37:34 -07:00
Darío Kondratiuk 498894280b
docs(page): Document Page.reload (#9926) 2021-11-01 18:27:03 +01:00
Pavel Feldman d6adff7792
fix(html): include html into the reporter types (#9907) 2021-10-31 11:06:28 -07:00
Pavel Feldman 8991bbde33
feat(html): live filtering, opt-out from auto-open (#9889) 2021-10-29 16:24:08 -07:00
Dmitry Gozman 49337890d2
docs: improve documentation for assertions and test config (#9890) 2021-10-29 15:25:52 -07:00
Yury Semikhatsky 34e55007d0
docs: clarify how to import assertions (#9868) 2021-10-29 08:33:07 -07:00
Yury Semikhatsky 759e1b6bda
docs: fix list formatting (#9857) 2021-10-28 11:06:41 -07:00
Kenneth Lum a72930a7bb
docs: add the general rule to expect the opposite of the matchers (#9772) 2021-10-28 08:35:35 -07:00
Max Schmitt 885cd67f3d
docs(python): move browser_context_args fixture back to session scope (#9711) 2021-10-28 11:53:23 +02:00
Dmitry Gozman fac5da9517
docs: update console event snippet (#9800)
This avoids the confusion where arguments are printed
asynchronously, interleaved with other console messages.
2021-10-26 14:40:28 -07:00
Dmitry Gozman 676e72c8e0
docs(proxy): note that browser-wide proxy is only required for Cr+Win (#9767) 2021-10-25 16:32:09 -07:00
Yury Semikhatsky ada7f4be23
docs(api): add assertThat aliases for java (#9761) 2021-10-25 12:03:24 -07:00
Yury Semikhatsky 9eadbf9b81
docs(api): add locator assertions for java (#9723) 2021-10-22 16:56:58 -07:00
Dmitry Gozman 23aa0be15b
docs: update afterEach docs with an example (#9727)
Also add a test for TestInfo.status in afterEach.
2021-10-22 16:32:22 -07:00
Yury Semikhatsky e7b4c181c7
docs(api): add assertions API for java (#9660) 2021-10-21 17:44:17 -07:00
Yury Semikhatsky 2ad2f53482
docs(fetch): merge UI test examples into API testing guide (#9684) 2021-10-21 11:44:06 -07:00
Max Schmitt dd5364e445
feat(create-playwright): add option to add examples (#8963) 2021-10-21 20:21:50 +02:00
Andrey Lushnikov df188d5876
docs: release notes for other ports (#9681) 2021-10-21 11:13:19 -07:00
Andrey Lushnikov 0a7e1c90eb
chore: add release notes for 1.16 (#9680) 2021-10-21 10:39:41 -07:00
Andrey Lushnikov 7626e881ac
docs: move api testing to test sidebar (#9670) 2021-10-20 18:38:01 -07:00
Yury Semikhatsky ddb70a6d35
docs(expect): default timeout (#9658) 2021-10-20 12:06:02 -07:00
Dmitry Gozman fb421e0a65
feat(github reporter): update docs, strip ansi escapes (#9640) 2021-10-20 07:56:03 -07:00
Yury Semikhatsky 2a2a3d2ed9
docs(expect): group locator methods, remove extra > (#9625) 2021-10-19 13:54:26 -07:00
Yury Semikhatsky 7e52357178
docs(fetch): ApiResponse -> APIResponse (#9623) 2021-10-19 11:17:23 -07:00
Dmitry Gozman 6d554a5e30
feat(reporter): expose more apis (#9603) 2021-10-19 08:38:04 -07:00
Yury Semikhatsky 6d727401bf
chore(fetch): rename ApiRequest* to APIRequest* (#9606) 2021-10-19 07:38:27 -07:00
Pavel Feldman e37660b068
feat(api): expose step location (#9602) 2021-10-18 21:06:18 -07:00
Yury Semikhatsky 79955fc4a8
docs: add response interception to network guide (#9598) 2021-10-18 17:53:06 -07:00
Yury Semikhatsky 42b535246f
docs(fetch): add api requests section under playwright test (#9595) 2021-10-18 15:44:47 -07:00
Yury Semikhatsky 990e80a23b
docs(fetch): add login via ApiRequestContext example (#9593) 2021-10-18 15:03:45 -07:00
Yury Semikhatsky 909b039b9a
docs: note that setViewportSize changes screen size (#9588) 2021-10-18 13:01:04 -07:00
Dmitry Gozman 7a4e799968
docs: add Selenium Grid integration (#9582) 2021-10-18 11:24:30 -07:00
Dmitry Gozman 4364c5f248
docs: update API testing doc (#9561) 2021-10-18 06:31:38 -07:00
Paul Biggar e473fc6a10
docs(test-runner): afterEach JSDoc description typo (#9542) 2021-10-16 12:36:07 +02:00
Feng Yu 0160c18f7a
docs: fix typo retried (#9562) 2021-10-15 19:24:03 -07:00
Pavel Feldman 99f3389b3b
feat(html): automatically use console reporter with html (#9559) 2021-10-15 19:18:56 -07:00
Yury Semikhatsky 235cd10a43
fix(runner): clarify where test.use() can be called (#9486) 2021-10-15 12:03:26 -07:00
Pavel Feldman 458945821f
doc(html): document html reporter (#9528) 2021-10-15 08:15:30 -07:00
Yury Semikhatsky 4680ef46de
docs: clarify default retry behavior (#9525) 2021-10-14 19:28:47 -07:00
Yury Semikhatsky 478fb34e35
docs: fix api-testing section id (#9514) 2021-10-14 11:20:15 -07:00
Dmitry Gozman bb013d14c0
docs: minor changes in apirequest (#9507) 2021-10-14 09:48:53 -07:00
Michael Rienstra bcae69e653
docs: minor change for readability (#9400) 2021-10-12 08:19:21 -07:00
knaitas cfe75fc755
docs(selector): change Python textContent to text_content (#9440)
Co-authored-by: Tadas Gedgaudas <tadas.gedgaudas@oxylabs.io>
2021-10-12 10:16:29 +02:00
Dmitry Anshilevich 8ae926efbf
docs(dotnet): fix .NET code example (#9415)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-10-11 23:29:48 +02:00
Jason Hu 89e98d85fc
docs(protractor): add more protractor selectors (#9334)
Also fix `by.cssContainingText`, the text should not double quoted
2021-10-11 10:20:51 -07:00
Yury Semikhatsky 6c18f1a6f0
feat(fetch): accept numeric and bool params (#9345) 2021-10-08 09:23:59 -07:00
Mark Skelton 52f19a222e
docs: update showcase.md (add lariat library)
1. Removes expect-playwright and jest-playwright from the list.  These projects both officially recommend using the built-in Playwright test runner so it probably doesn't make sense to keep them in the showcase.
1. Adds Lariat to the list.  Lariat is a library I've developed at my company to simplify page object construction with support for nesting, nth based matching, portals, and more.
1. Add karma-playwright-launcher info
2021-10-08 18:01:54 +02:00
Yury Semikhatsky ddf17e62f6
docs: reference only focal base image in docs (#9399) 2021-10-08 08:54:55 -07:00
Yury Semikhatsky e3256ee5d5
docs(fetch): add API testing guide with example (#9385) 2021-10-07 19:38:13 -07:00
Yury Semikhatsky 51490a82e1
feat(fetch): add helper methods for put, patch, head, delete (#9374) 2021-10-07 12:42:26 -07:00
Darío Kondratiuk ddbd64e4df
docs(dotnet): Improve some dotnet docs (#9265)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-10-06 21:07:31 +02:00
Pavel Feldman bc71d20d0f
feat(request): add global request fixture (#9332) 2021-10-06 10:09:27 -07:00
Yury Semikhatsky ab879fecd6
fix(api): make storageState option type same as context.storageState (#9333) 2021-10-06 09:02:41 -07:00
Max Schmitt 480e5a69e8
docs(browsers): fix missing JS snippets (#9339) 2021-10-06 17:43:31 +02:00
Pavel Feldman e8fdbbfa03
api: alias Fetch as ApiRequest (#9330) 2021-10-05 18:53:19 -07:00
Yury Semikhatsky 0469a7552b
fix(fetch): do not allow to call get/post with request (#9326) 2021-10-05 16:36:15 -07:00
Yury Semikhatsky 701a97beca
chore(fetch): unprefix _request and _newRequest (#9325) 2021-10-05 13:56:34 -07:00
Max Schmitt 97b6a344ac
docs: add docs page for how to parameterize your tests (#9291)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-10-05 20:22:16 +02:00
Max Schmitt e859a6996a
docs: fix wrongly annotated JS only paragraph (#9290) 2021-10-04 15:46:52 +02:00
Max Schmitt a280a17157
docs: add tabs for shell scripts (#9289) 2021-10-04 15:45:52 +02:00
Anish Karandikar 92c1aa20a7
docs(reporters): clarify dot reporter is default on CI (#9074) 2021-10-04 14:50:55 +02:00
Sidharth Vinod be30f9f1c4
feat(test-runner): Add GitHub Actions reporter (#9191) 2021-10-04 10:32:56 +02:00
Yury Semikhatsky 235eaca34a
fix(fetch): use data, form and multipart for different post data (#9248) 2021-10-01 12:11:33 -07:00