Commit graph

1591 commits

Author SHA1 Message Date
Max Schmitt ddccb59093
chore: fix Java CLI invocation on Windows (#19895)
For reference: https://stackoverflow.com/a/64300409
2023-01-05 10:55:07 -08:00
Andrey Lushnikov 3883799d68
feat: introduce locator.viewportRatio (#19761)
References #8740
2023-01-05 10:49:32 -08:00
Ori Livni 655d788c8e
docs(ci): fix wrong CircleCI environment vars (#19887) 2023-01-05 11:10:28 +01:00
Dmitry Gozman 599ae30313
chore: update .net generator with deprecated/discouraged (#19843) 2023-01-03 23:03:38 +01:00
Yury Semikhatsky 54c90576c6
docs: clarify what core features are (#19842) 2023-01-03 11:30:38 -08:00
Yusuke Iwaki b2820fccda
docs(python): fix example code of Route.fetch (#19840) 2023-01-03 11:05:09 -08:00
Tim Deschryver 9f27b300f4
docs(test-runners): update test runners for .NET (#19830) 2023-01-03 10:14:00 +01:00
Yury Semikhatsky 137070d889
Revert "chore: hide setup, store, TestProject.setupMatch, storageStat… (#19756)
…eName (#19442)"

This reverts commit 92dd734e04.
2022-12-28 15:39:31 -08:00
Yury Semikhatsky d912cbf115
docs: add instructions on msedge & chrome installation (#19753)
Fixes #18511
2022-12-28 15:13:45 -08:00
Sang Nguyen f88b22d0c0
docs: fix wrong waitForResponse example in Node.js (#19701) 2022-12-27 09:12:43 -08:00
Dave Guarino cb0688bb52
docs(showcase.md): add links to Ruby port (#19712) 2022-12-27 09:11:08 -08:00
Max Schmitt d5881b8d48
docs: test runner first inside Node.js docs (#19659) 2022-12-23 10:57:29 +01:00
Pavel Feldman a248be86ce
docs: http auth via config (#19643)
Fixes https://github.com/microsoft/playwright/issues/19630
2022-12-21 18:19:02 -08:00
Pavel Feldman 675f0eb4a0
chore: report error location for fatal errors (#19610) 2022-12-21 09:36:59 -08:00
Max Schmitt 3555dbd4b4
docs: add 1.29 language port release notes (#19573)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Yury Semikhatsky <yurys@chromium.org>
2022-12-20 20:51:21 +01:00
Max Schmitt bb2a2c7331
fix: render discouraged / deprecated types (#19596)
Fixes https://github.com/microsoft/playwright/issues/19591
2022-12-20 16:19:07 +01:00
Jean-François Greffier 6846765a9c
docs: fix docs links (#19510)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-12-20 13:17:52 +01:00
Vladimir Semenov 467d9f37fc
feat(reporter): Add parallelIndex field to TestResult (#19570) 2022-12-19 14:37:04 -08:00
Pavel Feldman 41174e74a7
chore: replace worker index w/ parallel index in the docs (#19574) 2022-12-19 13:47:05 -08:00
Chen Chen 53ef0d060c
docs(dotnet): fix the nunit and mstest testing examples in intro (#19557) 2022-12-19 16:28:17 +01:00
Yury Semikhatsky b5f908d31f
docs: remove Serializable from Route.*.postData in java (#19532)
We only support String and byte[] and throw otherwise, align the types
with it.
2022-12-16 11:14:29 -08:00
Yury Semikhatsky d01952576d
docs: route.fetch.postData in java (#19527) 2022-12-16 10:14:02 -08:00
Andrey Lushnikov e99323dd90
chore: release notes 1.29 (#19497)
Signed-off-by: Andrey Lushnikov <aslushnikov@gmail.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-12-16 09:46:40 -08:00
Max Schmitt 1e31afd9d7
docs: fix locator all since version (#19509)
Also a CP candidate.
2022-12-16 18:02:26 +01:00
Max Schmitt ba8a6c4b08
docs: fix HTML snippets (#19507)
Merging unreviewed to unblock docs build.

Main fix is in line 818, others drive-by.
2022-12-16 12:01:33 +01:00
Andrey Lushnikov 0be1fc8559
chore: cut version 1.29 (#19489) 2022-12-15 11:22:35 -08:00
Pavel Feldman 3afd83c8cc
chore: withdraw locator.enumerate (#19484) 2022-12-15 10:13:56 -08:00
Max Schmitt af6e93dfd6
docs(test-cli): document --trace mode (#19474) 2022-12-15 17:14:21 +01:00
Debbie O'Brien 38b8140aab
docs: improve examples in assertions (#19209) 2022-12-15 10:21:35 +01:00
Debbie O'Brien c1a1090eb3
docs: improve locators in fixtures (#19210) 2022-12-15 10:21:08 +01:00
Pavel Feldman 0e2732decf
feat(api): introduce expect().toPass (#19463) 2022-12-14 19:23:13 -08:00
Pavel Feldman 17a0074459
feat(api): introduce Locator.all, enumerate (#19461) 2022-12-14 16:42:50 -08:00
Debbie O'Brien e7b8554342
docs: change listItem to article in locators doc (#19060) 2022-12-14 13:42:52 -08:00
Andrey Lushnikov 8167f8bf54
chore: hide "comparator" option from documentation and types (#19441) 2022-12-14 09:58:19 -08:00
Yury Semikhatsky 92dd734e04
chore: hide setup, store, TestProject.setupMatch, storageStateName (#19442) 2022-12-13 22:48:38 -08:00
Andrey Lushnikov 184ab5b49d
docs: up-to-date linux support (#19440) 2022-12-13 16:19:23 -08:00
Pavel Feldman d1559a0fcc
chore: route.fetch(postData) (#19436) 2022-12-13 14:01:39 -08:00
Dmitry Gozman d02ac9f8db
fix(docs): TestOptions.screenshot typo (#19433) 2022-12-13 12:31:52 -08:00
Pavel Feldman 6cadc56ea3
feat(api): allow getByTestId(regex) (#19419) 2022-12-13 08:43:13 -08:00
Yury Semikhatsky 0cb1e97528
docs: strictSelectors does not affect Locators (#19414)
Fixes https://github.com/microsoft/playwright/issues/19398
2022-12-12 15:09:44 -08:00
Pranav Jain 59118b83f9
feat(android): add support for passing CR args & proxy when launching browser (#19212)
Fixes https://github.com/microsoft/playwright/issues/19211
2022-12-12 16:15:19 +01:00
Patrick Kerschbaum a2172e1799
docs: fix broken link (#19394) 2022-12-12 14:48:44 +01:00
Pavel Feldman 7aa3935dcc
chore: match selected options by both value and label (#19316) 2022-12-07 09:04:32 -08:00
Fernando Garcia Llorente cd4ccdfa29
feat: allow options in automatic screenshots (#19143)
Closes #9983 

Allowing Automatic Screenshots in `PlaywrightTestConfig` to have
`fullPage` & `omitBackground` as optional parameters.
2022-12-07 08:45:33 -08:00
Andrey Lushnikov cac67fb94f
chore: do not use "threshold" option for the ssim-cie94 comparator (#19314) 2022-12-06 17:03:13 -08:00
Yury Semikhatsky beb15bb504
chore: rename setup => setupMatch (#19309) 2022-12-06 14:55:22 -08:00
Yury Semikhatsky 1b3e53697b
chore: TestStorage => TestStore (#19308) 2022-12-06 13:33:43 -08:00
Yury Semikhatsky 405d6267dc
docs: per worker login with auto fixture (#19307) 2022-12-06 13:06:47 -08:00
Yury Semikhatsky 3c1b26b9f1
feat: make storage a global variable (#19283) 2022-12-05 21:37:37 -08:00
Dmitry Gozman e55a2bdf16
docs: rework Selectors to Other Locators (#19244)
- Replace links to `selectors.md` with `locators.md`.
- Remove sections that are covered by Locators docs.
- Restructure the rest of selectors doc, update them in terms of
locators.

Fixes #18992.
2022-12-02 21:48:37 -08:00
Pavel Feldman 9b35ef3b8d
docs: introduce the concept of details (#19242) 2022-12-02 17:35:21 -08:00
Andrey Lushnikov 6d82460a02
feat: implement a new image comparison function (#19166)
This patch implements a new image comparison function, codenamed
"ssim-cie94". The goal of the new comparison function is to cancel out
browser non-determenistic rendering.

To use the new comparison function:

```ts
await expect(page).toHaveScreenshot({
  comparator: 'ssim-cie94',
});
```

As of Nov 30, 2022, we identified the following sources of
non-determenistic rendering for Chromium:
- Anti-aliasing for certain shapes might be different due to the
  way skia rasterizes certain shapes.
- Color blending might be different on `x86` and `aarch64`
architectures.

The new function employs a few heuristics to fight these
differences.

Consider two non-equal image pixels `(r1, g1, b1)` and `(r2, g2, b2)`:
1. If the [CIE94] metric is less then 1.0, then we consider these pixels
   **EQUAL**. (The value `1.0` is the [just-noticeable difference] for
   [CIE94].). Otherwise, proceed to next step.
1. If all the 8 neighbors of the first pixel match its color, or
   if the 8 neighbors of the second pixel match its color, then these
   pixels are **DIFFERENT**. (In case of anti-aliasing, some of the
   direct neighbors have to be blended up or down.) Otherwise, proceed
   to next step.
1. If SSIM in some locality around the different pixels is more than
   0.99, then consider this pixels to be **EQUAL**. Otherwise, mark them
   as **DIFFERENT**. (Local SSIM for anti-aliased pixels turns out to be
   very close to 1.0).

[CIE94]: https://en.wikipedia.org/wiki/Color_difference#CIE94
[just-noticeable difference]:
https://en.wikipedia.org/wiki/Just-noticeable_difference
2022-12-02 15:22:05 -08:00
Yury Semikhatsky e998b6cab9
docs: auth in project setup (#19220) 2022-12-01 16:53:54 -08:00
Max Schmitt 62b28c89b4
docs(assertions): fix wrong toHaveText param description (#19213)
Fixes https://github.com/microsoft/playwright/issues/19202
2022-12-01 09:14:06 -08:00
Pavel d63f2542a2 chore: follow up to mock api doc change 2022-11-30 19:31:30 -08:00
Pavel Feldman 2fd0982372
docs: improve API mocking docs (#19189) 2022-11-30 19:29:14 -08:00
Pavel Feldman f0e8d8f074
feat(api): introduce route.fetch and route.fulfill(json) (#19184) 2022-11-30 17:26:19 -08:00
Max Schmitt 878401ff2b
docs(test-reporters): fix code snippet typos
Fixes #19159
2022-11-30 15:37:31 -08:00
Dmitry Gozman 6721ea4d3a
docs: fix string AriaRole in java/csharp (#19183) 2022-11-30 13:46:33 -08:00
Dmitry Gozman 499324961a
docs: remove Promise.all from examples (#19154)
Replaced with explicit `popupPromise` variable.
2022-11-30 12:36:35 -08:00
Yury Semikhatsky de1fc170b2
docs: TestProject.setup (#19152) 2022-11-30 09:18:47 -08:00
Dmitry Gozman 307a0b6ea7
fix(dotnet): codegen/docs use Name instead of NameString (#19156) 2022-11-29 20:56:18 -08:00
Pavel Feldman 89bdaf2441
chore: rename ScreenshotAssertions to SnapshotAssertions (#19150) 2022-11-29 16:57:03 -08:00
Yury Semikhatsky c9ec8b3e55
docs: clarify what is passed as Test.grep input (#19153)
Fixes https://github.com/microsoft/playwright/issues/18669
2022-11-29 16:03:30 -08:00
Jacob Stevenson b7a49fb371
docs: Improve usage of PublishTestResults for Azure Pipelines (#18241) 2022-11-29 13:02:30 -08:00
Tom Sparrow 90e3194482
docs(debug.md): clarify what slowMo number means (#18788) 2022-11-29 12:54:18 -08:00
Devin Beliveau 707cb1a0d5
docs: correct CircleCI brand name (#18988) 2022-11-29 12:52:07 -08:00
Shubham Kanodia 3d804ff7cd
chore: rewrite error message for missing snapshot (#19104) 2022-11-29 12:51:15 -08:00
Brian Zelip 7a68e79b7f
docs(js): add step to the cli install command overview (#19089) 2022-11-28 20:02:55 -08:00
Simon Legner 43cde2db10
docs(locator): fix #locate-by-test-id link (#19095) 2022-11-28 20:00:30 -08:00
Dmitry Gozman 65b0fb055d
docs: note assertion methods that only work with playwright test runner (#19116)
Fixes #18963.
2022-11-28 10:32:48 -08:00
Dmitry Gozman bd07a63683
docs: highlight printsToStdio in reporter reference (#19118)
Fixes #18945.
2022-11-28 10:32:01 -08:00
Simon Legner 9e91ca353c
docs(release-notes): YouTube video for version 1.28 (#19099) 2022-11-27 22:51:03 -10:00
Pavel Feldman be2139f0ac
docs: split assertions list into langs (#19039) 2022-11-24 08:25:24 -08:00
Max Schmitt 30debb5110
docs(python): expand assertion List types (#18975)
The following was before:

```txt
typing.Union[
    typing.List[typing.Union[typing.Pattern[str], str]],
    typing.Pattern[str],
    str,
]
```

but it should be:

```txt
typing.Union[
    typing.List[typing.Pattern[str]],
    typing.List[str],
    typing.List[typing.Union[typing.Pattern[str], str]],
    typing.Pattern[str],
    str,
]
```

Otherwise mypy yells at us.

See https://github.com/microsoft/playwright-python/issues/1524
2022-11-23 11:32:16 -10:00
Pavel Feldman f9a32e0927
chore: follow up to deprecation changes (#19025) 2022-11-23 12:32:14 -08:00
Pavel Feldman f97dcd4c79
docs: annotate deprecated methods (#19005) 2022-11-23 08:40:47 -08:00
ffluk3 e2624979e6
Fix timeout documentation (#18925) 2022-11-21 15:35:35 -08:00
Eduardo Vargas Torres 490ae796f3
docs (test-typescript-js.md): clarify TS ESM config (#18971)
Signed-off-by: Eduardo Vargas Torres <evargast@adobe.com>
2022-11-21 15:31:37 -08:00
Max Schmitt 6a5552ba24
chore: drop Ubuntu 18.04 support (#18924) 2022-11-21 11:23:45 -10:00
Dmitry Gozman d6ab1a90bf
docs: fix typos in some snippets (#18966)
Fixes #18898.
2022-11-21 10:47:38 -08:00
Pavel Feldman 620e8547d4
chore: generate usage: sections based on snippets (#18965) 2022-11-21 10:40:21 -08:00
Pavel Feldman 3fb4b3bbf9
chore: normalize api markdown (#18942) 2022-11-21 09:30:32 -08:00
Max Schmitt c2e3704f86
docs(dotnet): wrong AddInitScriptAsync snippet (#18893)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2399
2022-11-17 10:58:49 -10:00
Max Schmitt 3ed9dab1c9
docs(locator): code snippet fixes (#18884)
Follow-up on https://github.com/microsoft/playwright/pull/18839
2022-11-17 10:41:25 -08:00
Pavel Feldman f7b269d9c6
docs: brush up writing tests section (#18861) 2022-11-16 19:48:20 -08:00
Eduard Bardají Puig 10b8a83b45
docs(parameterize): fix code snippet (#18848) 2022-11-16 11:44:45 -10:00
Christian Clauss a7f205bf4d
docs(ci): upgrade GitHub Actions (#18845) 2022-11-16 11:42:04 -10:00
Yury Semikhatsky 5fcd8839dc
docs: Java, .NET, Python release notes 1.28 (#18854) 2022-11-16 13:19:20 -08:00
Yury Semikhatsky 05fb3e6de8
Revert "chore: hide TestProject.setup and TestInfo.storage (#18800)" (#18836)
Now that the patch has been cherry-picked to the release branch
reverting it on main.

This reverts commit 6deba5dc21.
2022-11-16 11:23:10 -08:00
Pavel Feldman 7c65b5d1f5
chore: render html cards for locators.md (#18839) 2022-11-16 09:54:40 -08:00
Debbie O'Brien 402b2d499e
docs: update vscode doc (#18809) 2022-11-16 08:12:26 +01:00
Dmitry Gozman 0387d96cd5
chore: multiply overloaded options in csharp (#18818)
This way we'll get the same treatment in docs generator as well as
dotnet api generator.

This also adds non-suffixed aliases for string options, e.g. `Name` in
addition to `NameString` and `NameRegex`.

Fixes #18407.
2022-11-15 15:46:54 -08:00
Pavel Feldman 210a57ea3b
docs: remove images from locators.md (#18832) 2022-11-15 13:13:16 -08:00
Andrey Lushnikov 250bc9fb2f
doc: version 1.28 release notes (#18802) 2022-11-15 11:40:35 -08:00
Yury Semikhatsky 6deba5dc21
chore: hide TestProject.setup and TestInfo.storage (#18800) 2022-11-14 17:03:01 -08:00
Dmitry Gozman 1b0a8122ba
chore: allow py code blocks for python (#18799)
Turns out, we have some snippets that use `py` instead of `python`.
2022-11-14 14:50:01 -08:00
Debbie O'Brien 25605c616c
Selectors quick fix (#18742) 2022-11-14 15:23:25 +01:00
Dmitry Gozman a7b2b04588
fix(getByRole): name and exact (#18719)
Following the `getByText()` and other methods:

- By default, matching is substring and case-insensitive. Before, it was
only case-insensitive, but not substring.
- With new option `exact: true`, matching is full string and
case-sensitive.
- Matching always normalizes whitespace.
- Codegen generates `exact: false` by default.
- `internal:role` treats `[name="foo"i]` as non-exact match.

Various fixes:
- Updated `getByRole` docs to match the reality.
- Locator generator edge cases.
2022-11-11 15:58:36 -08:00
Andrey Lushnikov bc78db07df
chore: cut 1.28 branch (#18746) 2022-11-11 15:30:15 -08:00