Commit Graph

950 Commits

Author SHA1 Message Date
Andrey Lushnikov
4cd2176155
feat(containers): introduce separate container commands (#17541)
This patch introduces hidden commands to control container
lifecycle:
- `npx playwright docker install-server-deps` to install fluxbox,
  vnc, novnc & to configure them.
- `npx playwright docker run-server` to run a server inside the
  container.

Drive-by: remove old version of container image when building a new
version with the same name. This way we won't pile up untagged
container images.
2022-09-22 13:38:54 -07:00
Andrey Lushnikov
d431958603
chore: move container integration back to playwright-core (#17487) 2022-09-21 12:45:43 -07:00
Pavel Feldman
53ab3d19e8
fix(protocol): update build tools (#17515) 2022-09-21 12:43:18 -07:00
Pavel Feldman
df143031e7
chore: move protocol and trace types into the top-level packages (#17486) 2022-09-20 18:41:51 -07:00
Pavel Feldman
854c783019
chore: project.id, configFile in reporter apis (#17346) 2022-09-14 14:56:28 -07:00
Andrey Lushnikov
462fa7d79d
devops: upload reports to a new container (#17298)
This patch:
- adds `gitBranchName` to the infra metadata to the report
- starts uploading persistent reports to a different container, prefixed
with utc year-month-date.
2022-09-13 10:55:39 -07:00
Max Schmitt
c7367b7065
chore(dotnet): no nested namespace in transport channels (#17273) 2022-09-12 23:13:59 +02:00
Max Schmitt
0b4de0df7f
chore(dotnet): use csharp 10 namespace declaration (#17248) 2022-09-12 11:01:49 -07:00
Andrey Lushnikov
af042beb13
feat: introduce docker integration (#16382)
This patch introduces the following commands:
- `npx playwright docker build` that builds a VRT docker image
  locally that is based off the `mcr.microsoft.com/playwright:jammy`
- `npx playwright docker start` that launches a docker container with
  browsers.
- `npx playwright docker stop` that stops given docker container.
- `npx playwright docker test` that runs all the tests inside a
  launched docker container.
2022-09-09 15:25:42 -07:00
Yury Semikhatsky
fbf9ca5316
fix: avoid using builtins in injected script bundles (#17145) 2022-09-06 17:25:02 -07:00
nate-ro
409bab59ea
chore: added starting time of test to the base json reporter (#16885) 2022-08-30 20:03:21 -07:00
sand4rt
ad46e980bc
feat(ct): initial solid (#16703) 2022-08-23 14:08:53 -07:00
Ross Wollman
aa23914659
chore: remove invalid device configurations (#16777)
Resolves #16622.

- removes current invalid configurations
- validates future changes
2022-08-23 14:03:41 -07:00
Andrey Lushnikov
e7fa9432fb
fix: ensure browser versions in browsers.json (#16760)
Fixes #15702
2022-08-23 09:22:54 -07:00
Yury Semikhatsky
b51b7e7f67
fix: devices is a map not an array (#16729) 2022-08-22 11:34:53 -07:00
github-actions[bot]
4a04d8d0b0
chore(driver): roll driver to recent Node.js LTS version (#16632)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-18 10:35:05 +02:00
Yury Semikhatsky
d133b58a96
fix(driver): PLAYWRIGHT_NODEJS_PATH test in sh (#16554) 2022-08-15 12:24:52 -07:00
Elizaveta Bezyaikna
9f22ae9aa9
chore: add id for each test to JSONReporter (#16494) 2022-08-15 09:28:21 -07:00
Yury Semikhatsky
ed1e5efc5c
feat: allow running driver with preinstalled node.js (#16518) 2022-08-15 09:27:35 -07:00
Max Schmitt
e725b5f8a9
fix(esm): fix TS type check with NodeNext mode (#16340) 2022-08-09 20:06:06 +02:00
Max Schmitt
841ee02dc2
test: add host GPU support on Android tests (#16241) 2022-08-04 09:36:04 +02:00
Dmitry Gozman
445fe032f5
feat(test runner): separate interrupted status from skipped (#16124) 2022-08-02 12:55:43 -07:00
Max Schmitt
153670978d
chore: fix Android 13 compatibility (#16139) 2022-08-02 18:22:27 +02:00
Pavel Feldman
5a79054544
feat(innerloop): allow reusing browsers over the remote connection (#16065) 2022-07-31 14:31:17 -07:00
Yury Semikhatsky
7d306bbc66
feat: return value from step (#16060) 2022-07-29 15:16:07 -07:00
Dmitry Gozman
e830fe821d
feat(test runner): introduce test.describe.fixme (#16059) 2022-07-29 12:44:22 -07:00
Yury Semikhatsky
af8e3e7afa
feat: print response text when toBeOK fails (#16040) 2022-07-29 11:46:48 -07:00
Max Schmitt
db5e097aca
chore: add 'gpg' package to Docker images (#15917) 2022-07-25 12:49:51 +02:00
Max Schmitt
004cd9273c
fix(test-runner): multiple webServer types (#15901) 2022-07-25 10:39:06 +02:00
Max Schmitt
501b24a078
test: android test enhancements (#15797) 2022-07-20 18:27:08 +02:00
Pavel Feldman
55cd3928b7
chore: reuse context in the innerloop mode (#15719) 2022-07-15 10:36:36 -07:00
Max Schmitt
98ea418124
fix(expect): expect.not types (#15487) 2022-07-11 18:31:53 +02:00
github-actions[bot]
88015d3791
chore(driver): roll driver to recent Node.js LTS version (#15534)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 15:56:07 +02:00
Max Schmitt
02ed5b4cd6 devops: auto roll Node.js version of driver follow-up 2022-07-11 15:54:46 +02:00
Max Schmitt
9110d64917
devops: add auto driver Node.js roll bot (#15531) 2022-07-11 15:27:44 +02: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
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
Pavel Feldman
6181b0dcaf
docs: annotate since (#15386) 2022-07-05 17:24:50 -07:00
Dmitry Gozman
4eccb89a79
chore: do not serialize buffers into base64 in local mode (#15316) 2022-07-05 08:58:34 -07:00
Dmitry Gozman
82032be368
chore(server): validate/convert protocol both ways (#14811)
Previously, we only validated/converted on the way to the server,
but not from the server.

Validating both ways catches issues earlier, and allows us to
perform automatic conversions, for example only converting
buffers to base64 when sending over wire.
2022-07-01 09:58:07 -07:00
Max Schmitt
f6bdf3a3cc
chore: generate types always with LF (#15245) 2022-06-29 23:19:49 +02:00
Ross Wollman
3805e942a1
docs(java): fix pom.xml (and auto-generate) (#15192) 2022-06-28 11:37:53 -07:00
Andrey Lushnikov
857d46ca93
docs: add Java release notes (#15158) 2022-06-27 15:31:41 -07:00
Pavel Feldman
d60f84d06a
chore: fix api.json (#15093) 2022-06-23 16:15:14 -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
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
Pavel Feldman
225ab68d1c
fix(test): fix the route test (#14890) 2022-06-15 16:15:45 -07:00
Yury Semikhatsky
e00a26a11d
feat(route): fulfill with HARResponse (#14865) 2022-06-14 15:07:22 -07:00