Andrey Lushnikov
4a1878e00e
devops: fix flakiness dashboard for projects with no metadata ( #12426 )
2022-03-01 01:21:00 -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
428a014cad
devops: Docker publishing cleanups ( #12341 )
2022-02-24 18:10:34 +01:00
Max Schmitt
0b55950d6a
chore: fix Android tests ( #12325 )
2022-02-24 06:57:32 +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
Yury Semikhatsky
abd7084bcc
fix: match default font families in headless chromium ( #11340 )
2022-02-11 09:06:17 -08:00
Dmitry Gozman
66b5cf5ae1
feat(remote): make PlaywrightServer work with browserType.connect ( #11849 )
...
This changes PlaywrigtServer to serve connections like `ws://localhost:3333/?browser=chromium`:
- launches the browser;
- talks `browserType.connect`-style protocol over websocket;
- compatible with `connectOptions` fixture.
```js
await playwright.chromium.connect({ wsEndpoint: 'ws://localhost:3333/?browser=chrome' });
```
2022-02-10 16:36:23 -08:00
Max Schmitt
b8d588aa47
chore: fix .NET generation script for .NET 6 ( #11965 )
2022-02-09 18:03:37 +01: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
Andrey Lushnikov
39ed705904
chore: unify workspace helper scripts ( #11925 )
...
This patch unifies a variety of different workspace
scripts into a single `//utils/workspace.js`.
Fixes #11362
2022-02-08 10:35:00 -08:00
Pavel Feldman
1215057ca1
chore: use ipc transport for out-of-process driver ( #11826 )
2022-02-02 21:26:45 -08: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
Max Schmitt
c752b28516
chore: pin production dependencies ( #11793 )
2022-02-02 11:14:41 +01:00
Pavel Feldman
6e2fcc4700
chore: do not expose suite load error ( #11797 )
2022-02-01 15:34:16 -08:00
Max Schmitt
028afb167b
chore: bump production dependencies ( #11787 )
2022-02-01 21:27:34 +01:00
Pavel Feldman
2b55adaafa
feat(breaking): always report onBegin/onEnd, report file errors ( #11758 )
2022-01-31 17:09:04 -08:00
Xiaoxing Ye
a35c249fdc
fix: quote path to prevent space issue ( #11733 )
...
Co-authored-by: Xiaoxing Ye <xiaoye@microsoft.com>
2022-01-29 09:56:58 -08:00
dependabot[bot]
5635e840f8
chore(deps): bump node-fetch in /utils/flakiness-dashboard ( #11732 )
...
Bumps [node-fetch](https://github.com/node-fetch/node-fetch ) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases )
- [Commits](https://github.com/node-fetch/node-fetch/compare/v2.6.1...v2.6.7 )
---
updated-dependencies:
- dependency-name: node-fetch
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-29 08:15:26 -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
Pavel Feldman
136fab7041
fix(prepare): don't change package files on prepare ( #11579 )
2022-01-24 11:25:24 -08:00
Yury Semikhatsky
ab9d5a0dc4
chore(tracing): add tracing to APIRequestContext ( #11502 )
2022-01-22 11:25:13 -08:00
campersau
066b6734d0
chore(dotnet): generate byte[] for binary properties in generator ( #11539 )
2022-01-21 15:51:06 +01:00
Andrey Lushnikov
9f689865b7
chore: minor fix to the package update version bumper ( #11448 )
2022-01-18 00:55:37 -08:00
Andrey Lushnikov
9285596806
chore: cut v1.18.0 ( #11358 )
...
Drive-by: fix the `//utils/bump_package_versions.js` script.
2022-01-12 11:50:44 -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
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
Dmitry Gozman
f77c874e8a
feat(test runner): make _extendTest experimental ( #11210 )
...
Hidden from types and docs.
2022-01-05 15:54:00 -08:00
Pavel Feldman
a0aeaeb929
test: expose repeatEachIndex ( #11158 )
2022-01-03 17:29:54 -08:00
Dmitry Gozman
af153b9826
test: unflake some websocket tests ( #11069 )
2021-12-22 11:17:34 -08:00
Yury Semikhatsky
8f9eaf7cba
fix(types): allow specifying element type in locator.evaluate callback ( #11048 )
2021-12-21 13:17:45 -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
Max Schmitt
b310c6bd6c
chore(dotnet): make JSHandle inherit from IAsyncDisposable ( #10905 )
2021-12-14 12:40:56 -08:00
Pavel Feldman
a82a3f1128
chore: move html report to package ( #10898 )
2021-12-13 16:38:26 -08:00
Joel Einbinder
d8abb18c57
chore: allow private build-only packages ( #10893 )
2021-12-13 15:37:41 -08:00
Yury Semikhatsky
976af162b0
feat(tracing): pack sources to trace on the driver side ( #10815 )
2021-12-09 17:21:17 -08:00
Max Schmitt
5ba7903ba0
devops: migrate from master to main branch ( #10303 )
2021-12-07 22:58:33 -08:00
Max Schmitt
6e607bc109
chore: fix .NET docs comments which contained < or > ( #10772 )
2021-12-07 16:33:28 -08:00
Andrey Lushnikov
6ea607ce2a
devops: move docker publishing logic to main repo ( #10768 )
...
This patch:
- moves docker publishing to main repo
- extracts all the logic from the GHA YML file to Bash
- starts using the script in both `publish_canary.yml` and
`publish_release.yml`
Fixes #10351
2021-12-07 15:28:47 -08:00
Andrey Lushnikov
e680b733f5
devops: demand explicit arch when building docker ( #10743 )
...
Currently, arch is inhereted from host. This patch explicitly
sets desired docker build arch.
References #10351
2021-12-07 09:28:59 -08:00
Max Schmitt
c3687a693b
chore(dotnet): fix channel generation for 1.17 ( #10711 )
2021-12-06 13:40:26 -08:00
Pavel Feldman
518d67add5
feat(test.info): expose information on the currently running test ( #10708 )
2021-12-06 09:25:11 -08:00
Max Schmitt
ea9475d37d
chore: fix utils/generate_dotnet_channels.js after monorepo ( #10710 )
2021-12-03 18:51:25 -08:00
Pavel Feldman
b9731a904e
chore: add validations into check_deps ( #10661 )
2021-12-01 18:14:13 -08:00
Pavel Feldman
541248006c
chore: remove create-playwright, it is in monorepo by mistake ( #10654 )
2021-12-01 13:09:35 -08:00
Max Schmitt
5c93066437
chore: fix bump_package_versions.js under Node.js 12 ( #10629 )
2021-12-01 18:26:36 +01:00
Max Schmitt
0936ce2bbd
chore: add wget to Docker images
2021-11-30 19:35:48 +01:00
Max Schmitt
11a389c8f9
chore: have correct version in driver ( #10374 )
2021-11-29 18:05:43 +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
5a8010cf4f
fix: noncompliant Firefox User-Agents ( #10492 )
2021-11-23 18:56:22 +01: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
Joel Einbinder
bd5ae9e0cb
fix(dotnet): correctly mark members as deprecated ( #9977 )
2021-11-23 03:00:12 -05:00
Pavel Feldman
daae8d4863
chore: open trace.playwright.dev ( #10475 )
2021-11-22 10:41:22 -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
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
Dmitry Gozman
c470080aec
test: move grid tests to installation-tests ( #10418 )
...
- Determine the actual chrome version.
- Download chromedriver.
- Run tests.
2021-11-18 15:32:09 -08:00
Andrey Lushnikov
f14e105051
chore: fixes to helper scripts
2021-11-17 17:02:29 -08:00
Pavel Feldman
70ede0d987
chore: use channel traits ( #10389 )
2021-11-17 15:26:01 -08:00
Andrey Lushnikov
32bc83d322
chore: be on the safe side with publishing release candidate ( #10363 )
...
Make sure we never publish any other version that contains `rc`
as part of the version.
References #10334
2021-11-16 15:38:14 -08:00
Andrey Lushnikov
6904d6c7e6
chore: support release candidate publishing ( #10360 )
...
Fixes #10334
2021-11-16 14:28:34 -08:00
Andrey Lushnikov
fd3ec50cf6
devops: switch to LF line-endings in Git for text files ( #10292 )
...
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-11-15 17:48:49 +01:00
Andrey Lushnikov
8ce6633937
chore: clean up docker image ( #10260 )
...
This patch:
- removes the Visual Regression bits from the images. These will
probably be added back when it's ready for the prime time.
* removes VNC && noVNC
* removes Playwright Agent
- cleans up apt caches
This drops image size from 2.03GB to 1.91GB.
2021-11-11 15:35:57 -08:00
Dmitry Gozman
f38f611478
chore: add npm run lint-tests ( #10252 )
2021-11-11 13:27:50 -08:00
Max Schmitt
96d7b21b34
devops: fix driver deployment ( #10208 )
...
follow-up for #10207
2021-11-10 11:21:25 +01:00
Andrey Lushnikov
8375bff1db
devops: support arm drivers for Mac and Linux ( #10207 )
...
- Move to node 16 for driver (Node publishes Mac arm64 builds since Node 16)
- Publish Mac Arm64 driver
- Publish Linux Arm64 driver
2021-11-10 01:19:05 -08:00
Andrey Lushnikov
7af0dc178b
devops: support beta deployment for Trace viewer ( #10201 )
...
Trace Viewer will have 3 deployments:
- Stable: https://trace.playwright.dev
- Beta (from release branch): https://trace.playwright.dev/beta
- Next (from master branch): https://trace.playwright.dev/next
2021-11-09 17:21:51 -08:00
Max Schmitt
c98b8ebd2b
devops: follow-up on Trace Viewer deployment ( #10154 )
2021-11-09 00:42:59 +01:00
Pavel Feldman
7b64161a37
feat(test-runner): allow specifying fine-grained trace options ( #10147 )
2021-11-08 15:39:58 -08:00
Max Schmitt
51910b7a01
devops: add Trace Viewer deployment ( #10154 )
2021-11-09 00:27:54 +01:00
Dmitry Gozman
9cebe60831
feat(reporters): augment non-stdio reporters with dot/line ( #10003 )
2021-11-03 08:25:16 -07:00
Nick Partridge
a51ac39275
feat: add snapshotDir to set base snapshot directory ( #9260 )
2021-11-02 08:02:49 -07:00
Andrey Lushnikov
e26a722d23
devops: fix publishing @next versions ( #9963 )
...
This patch:
- removes the "is this upstream check?" when publishing daily version
- fixes the bug when manually triggered builds were pushed under @beta
tag
Drive-by: rename "tip-of-tree" flag to "next" for consistency.
2021-11-02 02:35:03 -07:00
Pavel Feldman
56ca3a18f5
feat(trace-viewer): show test name ( #9957 )
2021-11-01 21:23:35 -07:00
Max Schmitt
96d611ed7d
devops: publish devrelease:npm to beta on release branches ( #9949 )
...
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-11-01 17:29:56 -07:00
Yury Semikhatsky
13cc266b37
feat: add "commit" to possible waitUntil options ( #9892 )
2021-11-01 17:12:19 -07:00
Max Schmitt
ce50b5d40a
chore: add script to update package/lock.json ( #9919 )
2021-11-01 20:09:23 +01: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
Pavel Feldman
d6adff7792
fix(html): include html into the reporter types ( #9907 )
2021-10-31 11:06:28 -07:00
Yury Semikhatsky
9f3f25916e
fix(devops): do not upload -win32.zip to Azure ( #9884 )
2021-10-29 09:54:04 -07:00
Max Schmitt
82dd7c87ad
devops: do not publish Win 32 bit driver anymore ( #9789 )
2021-10-27 23:48:26 +02:00
Max Schmitt
fef5c38b3e
chore: remove Win/32bit from registry ( #9790 )
2021-10-27 23:48:17 +02:00
Max Schmitt
113d425f15
chore: use Node.js 16 in Docker ( #9824 )
2021-10-27 23:48:10 +02:00
Andrey Lushnikov
7927920c35
fix(docker): do not export DISPLAY for everybody without XVFB running ( #9795 )
...
Fixes #9756
2021-10-26 13:21:18 -07:00
Joel Einbinder
f2888395a6
fix: support even older node 12 ( #9718 )
2021-10-22 15:59:52 -04:00
Max Schmitt
60939a91b2
devops: release create-playwright over publish infra ( #9683 )
2021-10-22 10:13:49 +02:00
Max Schmitt
94d1fcf835
chore: move create-playwright build to build.js infra ( #9687 )
...
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-10-22 10:13:05 +02:00
Andrey Lushnikov
39516c29d1
chore: fix //utils/print_versions.js ( #9647 )
2021-10-20 02:20:46 -07:00
Max Schmitt
c60dcea3e5
chore: fix roll_browsers.js
2021-10-20 10:24:16 +02:00
Andrey Lushnikov
983cfde4d4
feat: introduce docker integration for Playwright Test ( #9599 )
2021-10-19 16:10:24 -07:00
Yury Semikhatsky
ade2171c4b
fix(docs): APIRequest* variable names ( #9621 )
2021-10-19 09:37:17 -07:00
Joel Einbinder
53c866c0f2
fix(monorepo): explicitly list package.json exports instead of using glob patterns ( #9584 )
2021-10-19 12:28:02 -04: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
Pavel Feldman
e31b96cc26
feat(tracing): make context.request appear in the trace ( #9555 )
2021-10-15 15:22:49 -07:00
Joel Einbinder
4c9d7d5ccc
chore(webpack): fix watch for webpack 5 ( #9516 )
2021-10-14 15:16:15 -04:00
Andrey Lushnikov
cd92451b9f
fix: protocol generation in monorepo ( #9513 )
2021-10-14 11:14:50 -07:00
Joel Einbinder
c8f875a193
chore: move test runner types into the playwright test package ( #9472 )
...
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-10-14 11:55:08 +02:00
Pavel Feldman
bb77912aee
chore: don't include babel compiled files in webpack bundles ( #9491 )
2021-10-13 19:27:50 -07:00