Max Schmitt
cf12a1a97e
chore: upgrade commander.js to version 8 ( #9230 )
2021-09-30 12:24:24 +02:00
Max Schmitt
cd22072685
chore: enable object-curly-spacing in ESLint ( #9168 )
2021-09-27 18:58:08 +02:00
Joel Einbinder
c673ef5330
chore(registry): refactor logic of what browsers to download to top level ( #9078 )
2021-09-22 11:43:13 -07:00
Andrey Lushnikov
4f762ba90a
feat: introduce experimental general-purpose grid ( #8941 )
...
This patch adds a general-purpose grid framework to parallelize
Playwright across multiple agents.
This patch adds two CLI commands to manage grid:
- `npx playwright experimental-grid-server` - to launch grid
- `npx playwrigth experimental-grid-agent` - to launch agent in a host
environment.
Grid server accepts an `--agent-factory` argument. A simple
`factory.js` might look like this:
```js
const child_process = require('child_process');
module.exports = {
name: 'My Simple Factory',
capacity: Infinity, // How many workers launch per agent
timeout: 10_000, // 10 seconds timeout to create agent
launch: ({agentId, gridURL, playwrightVersion}) => child_process.spawn(`npx`, [
'playwright'
'experimental-grid-agent',
'--grid-url', gridURL,
'--agent-id', agentId,
], {
cwd: __dirname,
shell: true,
stdio: 'inherit',
}),
};
```
With this `factory.js`, grid server could be launched like this:
```bash
npx playwright experimental-grid-server --factory=./factory.js
```
Once launched, it could be used with Playwright Test using env variable:
```bash
PW_GRID=http://localhost:3000 npx playwright test
```
2021-09-16 01:20:36 -07:00
Max Schmitt
96355b3a7a
chore: hide npx playwright debug command ( #8946 )
2021-09-15 21:19:16 +02:00
Pavel Feldman
16baaa317d
chore: remove stale html experiments ( #8905 )
2021-09-13 20:34:46 -07:00
Pavel Feldman
bb33b8923e
feat(report): add show-report option ( #8895 )
2021-09-13 15:19:40 -07:00
Pavel Feldman
7bbb63d143
feat(test): start authoring raw reporter ( #8790 )
2021-09-09 14:17:18 -07:00
Max Schmitt
e1c2d67359
fix(cli): allow unknown parameters in debug command ( #8732 )
2021-09-07 18:35:01 +02:00
Max Schmitt
c4eb2d4b1e
chore: move sdkLanguage over to the protocol init call ( #8329 )
2021-08-20 21:32:21 +02:00
Pavel Feldman
44887c237d
chore: reimplement socks to be readable ( #8315 )
2021-08-19 15:16:46 -07:00
Max Schmitt
ddcdb6d413
chore(protocol): do client hello instead of server hello ( #8019 )
2021-08-19 17:31:14 +02:00
Dmitry Gozman
8d81890e47
feat(codegen): support --save-trace option ( #8267 )
2021-08-18 07:27:45 -07:00
Andrey Lushnikov
51fb19561c
devops: support npx playwright install --with-deps command ( #7194 )
...
The common pattern today is to have two commands to configure CI:
```sh
npx playwright install-deps chromium
npx playwright install chromium
```
With this patch, this becomes:
```sh
npx playwright install --with-deps chromium
```
Note: `--with-deps` might call `sudo`.
2021-08-07 03:53:33 -07:00
Jan Sepke
600d82b17c
fix(cli): fix typo in help text ( #7903 )
...
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-07-29 11:23:50 +02:00
Max Schmitt
2ff25522cc
test: rework port forwarding server tests to launch server out of process ( #7693 )
2021-07-19 07:53:12 +02:00
divdavem
87b0cc530c
feat(cli): add --ignore-https-errors option ( #7671 )
2021-07-16 07:33:20 -07:00
Dmitry Gozman
0742cb9076
chore: move working with browser channels to Registry Executables ( #7581 )
2021-07-13 19:03:49 -07:00
Dmitry Gozman
57c5e4d8cf
chore: replace Registry api with Executable list ( #7544 )
2021-07-13 15:57:40 -07:00
Dmitry Gozman
65606c093a
chore: simplify Registry api ( #7451 )
2021-07-09 16:10:23 -07:00
Max Schmitt
08da9d207e
chore: move processLauncher into src/utils ( #7504 )
2021-07-07 21:14:16 +02:00
Dmitry Gozman
47885db116
chore: move install to Registry ( #7433 )
...
This is an effort to consolidate all handling of browser binaries in a single place.
2021-07-06 20:59:16 -07:00
Andrey Lushnikov
ec8d0629f3
feat: support msedge-beta channel ( #7442 )
...
Fixes #7232
2021-07-02 12:55:46 -07:00
Dmitry Gozman
040d81052a
fix(cli): do not suggest internal tools in install command ( #7437 )
2021-07-02 11:22:26 -07:00
Dmitry Gozman
4c7343fe96
chore: move installDeps to Registry ( #7431 )
...
This is an effort to consolidate all handling of browser binaries in a single place.
2021-07-01 17:14:04 -07:00
Pavel Feldman
e9246089d5
test(trace-viewer): start adding tests ( #7393 )
2021-06-29 22:35:50 -07:00
Dmitry Gozman
1660334357
feat(install): docs and help ( #7365 )
...
Drive-by: remove test-intro and references to it.
2021-06-28 18:50:24 -07:00
Max Schmitt
5bf69b667e
fix(test-runner): allow additional params when pw-test is not installed ( #7200 )
2021-06-17 13:40:49 -07:00
Pavel Feldman
3b1bae8a40
feat(codegen): allow generating tests ( #7049 )
2021-06-10 16:52:59 -07:00
Joel Einbinder
6788b9cf8c
fix(@playwright/test): plumbing ( #6992 )
...
`npx playwright test` should find and forward to the @playwright/test package.
2021-06-09 11:18:32 -07:00
Andrey Lushnikov
cfd49b5c01
feat: support npx playwright install msedge ( #6861 )
2021-06-07 00:23:22 -07:00
Dmitry Gozman
f745bf1fbc
chore: bring in folio source ( #6923 )
...
- Source now lives at `src/test`.
- Former folio tests live at `tests/playwright-test`.
- We use `src/test/internal.ts` that exposes base test without
Playwright fixtures for most tests (to avoid modifications for now).
- Test types live in `types/testFoo.d.ts`.
- Stable test runner is installed to `tests/config/test-runner` during `npm install`.
- All deps including test-only are now listed in `package.json`.
Non-test deps must also be listed in `build_package.js` to get included.
2021-06-06 17:09:53 -07:00
Dmitry Gozman
82041b2f74
test: roll to folio@0.4.0-alpha28 ( #6918 )
2021-06-04 20:54:58 -07:00
Dmitry Gozman
21b00d0bcc
test: roll to folio@0.4.0-alpha27 ( #6897 )
2021-06-03 22:06:59 -07:00
Max Schmitt
064150f8dd
chore: use fs.promises API instead of promisify ( #6871 )
2021-06-03 18:55:33 +02:00
Dmitry Gozman
3de3a88930
feat(test): introduce npx playwright test ( #6816 )
2021-06-03 08:07:55 -07:00
Max Schmitt
c09726b023
test: add tests for port-forwarding via playwrightclient ( #6860 )q
2021-06-03 02:19:01 +02:00
Max Schmitt
e91e49e533
feat(port-forwarding): add playwrightclient support ( #6786 )
2021-06-02 23:35:17 +02:00
Dmitry Gozman
33c2f6c31e
chore: do not bundle api.json and protocol.yml ( #6841 )
...
These are only needed for the driver, so bundle them
in the driver explicitly.
2021-06-02 14:01:05 -07:00
Andrey Lushnikov
919d258356
feat: support npx playwright install chrome ( #6835 )
...
This will install latest-and-greatest chrome stable.
2021-06-01 23:16:55 -07:00
Andrey Lushnikov
cb4adb1446
feat: install chrome-beta via cli ( #6831 )
...
This patch starts introduces `npx playwright install chrome-beta`
command and switches our Chrome Beta tests to it.
2021-06-01 18:26:12 -07:00
Anže Vodovnik
01d8f87923
chore(CLI): let other langs specify exec name ( #6719 )
2021-05-25 16:49:24 +02:00
Dmitry Gozman
af2fec6bcf
fix(codegen): generate all options for java ( #6698 )
2021-05-21 16:17:25 -07:00
Dmitry Gozman
f529f0a25d
fix(codegen): generate acceptDownloads option for download signals ( #6697 )
2021-05-21 15:08:39 -07:00
Pavel Feldman
17e9dd95f7
feat(trace): support loading trace from zip ( #6551 )
2021-05-12 21:31:34 -07:00
Pavel Feldman
1a39843df5
docs: follow up on adding trace dir, unify launch options ( #6545 )
2021-05-12 16:16:36 -07:00
Pavel Feldman
21cb726b7d
chore(tracing): expose tracing api ( #6523 )
2021-05-12 12:21:54 -07:00
Yury Semikhatsky
460cc31941
fix: propagate custom executable path to codegen ( #6509 )
2021-05-12 11:45:57 -07:00
Pavel Feldman
a9219aa8b6
chore: start / stop context tracing ( #6309 )
2021-04-23 20:39:09 -07:00
Andrey Lushnikov
23dfaf9e9b
feat: start downloading firefox-stable channel ( #6177 )
...
This patch adds support for downloading and running Playwright with
firefox-stable channel.
References #5993
2021-04-19 21:26:33 -07:00