Dmitry Gozman
2a97ad2487
test: check that we remove temp directories on process exit ( #13494 )
2022-04-12 12:28:33 -07:00
Ross Wollman
1af32e400f
feat(test-runner): introduce GlobalInfo ( #13083 )
2022-04-08 13:22:14 -07:00
Pavel Feldman
e79b90f454
chore: use utils via index export (5) ( #13413 )
2022-04-07 20:18:22 -07:00
Dmitry Gozman
155bb7fcae
fix: wait for cleanup on double SIGINT ( #13411 )
...
This is a speculative fix to leftover tmp directories.
When users issues SIGINT twice, we enter `gracefullyClose()`
twice, and shortcut the second time. It turns out, we do
not wait for directories removal.
Note: it is unknown how often we reach this codepath in practice.
2022-04-07 19:20:54 -07:00
Pavel Feldman
40d5e3a3c9
chore: use utils via index export (3) ( #13403 )
2022-04-07 13:55:44 -07:00
Pavel Feldman
bde7bf4ea9
chore: move registry & dispatchers to under server ( #13370 )
2022-04-06 22:21:27 -07:00
Pavel Feldman
5ae2017a5b
chore: always import type ( #13365 )
2022-04-06 14:57:14 -07:00
Pavel Feldman
6ca58e18cb
fix(electron): better support for custom schemas ( #13329 )
2022-04-05 16:10:12 -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
Pavel Feldman
5e17ed137b
fix(html-report): only invoke git once ( #13165 )
2022-03-29 15:49:58 -07:00
Pavel Feldman
a58707b8a6
chore: group tests under tests/ (2) ( #13082 )
2022-03-25 23:09:02 -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
Ross Wollman
72b95b9ffa
chore: dogfood dotenv ( #12673 )
...
Use a top-level .env file to control the internal testing setup.
This allows for easy manipulation of environment variables regardless
of your setup (VSCode Extension, CLI, etc.).
2022-03-11 15:12:25 -08:00
Andrey Lushnikov
e8ad7eb3f2
browser(firefox): roll Firefox to M97 ( #12574 )
...
Firefox 98 doesn't work on Ubuntu aarch64 yet.
https://github.com/microsoft/playwright/issues/12557
2022-03-07 16:16:42 -08:00
Pavel Feldman
4b19d59ec5
feat(test): introduce fully parallel mode ( #12446 )
2022-03-01 18:12:21 -08:00
Andrey Lushnikov
1a7a3bf99d
chore: fix types for tests ( #12429 )
2022-03-01 01:32:40 -08:00
Andrey Lushnikov
66eda836c9
browser(ff-beta): roll Firefox-Beta to 98b10 ( #12421 )
...
Firefox reverted the third-party cookies recently:
https://bugzilla.mozilla.org/show_bug.cgi?id=1751435
Thus changes in tests.
References #12225
2022-03-01 00:17:33 -08:00
Dmitry Gozman
edac84d072
feat(remote): send browser/channel/headless in a header ( #12205 )
2022-02-18 07:54:33 -08:00
Dmitry Gozman
47cc7c4ae8
chore: refactor internal cli commands to use commander ( #12146 )
2022-02-16 09:54:12 -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
Dmitry Gozman
284f76357f
test: unflake browsertype-connect.spec ( #11994 )
...
Consider the scenario:
- First test starts a remote server, connects to it and does not close.
- Remote server fixture stops the server in teardown. Meanwhile,
the connected browser did not get notified about disconnect just yet.
- Second test starts and sets up tracing in the old connected browser.
- Tracing fails because the browser now realises it has disconnected.
2022-02-09 17:00:33 -08:00
Max Schmitt
c752b28516
chore: pin production dependencies ( #11793 )
2022-02-02 11:14:41 +01:00
Caio Agiani
b6b60decdf
fix: typos ( #11789 )
2022-02-01 11:09:41 -08:00
Dmitry Gozman
30f3cbd6da
fix(fixtures): make sure defaultLaunchOptions are always there ( #11713 )
2022-01-28 10:51:55 -08:00
Pavel Feldman
29a84b2df8
chore: allow pre-processing scripts ( #11702 )
2022-01-27 14:32:23 -08:00
Dmitry Gozman
b1fbc4fdbe
fix(test runner): resolve tsconfig for each file ( #11662 )
...
This allows us to properly handle path mappings
that are not too ambiguous.
2022-01-26 18:28:42 -08:00
Pavel Feldman
db0cda9df5
chore: rename default config to match extension pattern ( #11446 )
2022-01-18 13:31:12 -08:00
Pavel Feldman
8ecf581b45
chore: focus by line should override only ( #11427 )
2022-01-16 08:47:09 -08:00
Pavel Feldman
373042ed89
chore: don't allow importing @playwright/test twice ( #11218 )
2022-01-06 09:29:05 -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
Ross Wollman
fde427d890
feat(proxy): unify local network proxy behavior ( #10719 )
...
When configuring a proxy, Chromium requires a magic tokens to get some
local network requests to go through the proxy. This has tripped up a
few users, so we make the behavior default to the expected: proxy
everything including the local requests. This matches the other vendors
as well.
NB: This can be disabled via
`PLAYWRIGHT_DISABLE_FORCED_CHROMIUM_PROXIED_LOOPBACK=1`
Supercedes: #8345
Fixes : #10631
2021-12-10 14:01:56 -08:00
Yury Semikhatsky
976af162b0
feat(tracing): pack sources to trace on the driver side ( #10815 )
2021-12-09 17:21:17 -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
04dc935265
test: do not print output from child processes in skipped tests ( #10422 )
2021-11-18 14:35:51 -08:00
Andrey Lushnikov
dc89738233
test: bump expect timeout ( #10384 )
...
This should make trace viewer tests less flaky.
References #10383
2021-11-17 11:56:24 -08:00
Max Schmitt
3a64da7a54
fix: do not show taskkill.exe output ( #10244 )
2021-11-11 18:32:22 +01:00
Pavel Feldman
8991bbde33
feat(html): live filtering, opt-out from auto-open ( #9889 )
2021-10-29 16:24:08 -07:00
Max Schmitt
21c4435060
test: do kill testProcesses accordingly ( #9818 )
...
* test: do kill testProcesses accordingly
* fix it
2021-10-28 23:08:04 +02:00
Pavel Feldman
2e4722d460
test: migrate to upstream fixtures ( #9835 )
2021-10-28 08:31:30 -07:00
Pavel Feldman
16afb5064f
test: remove browserOptions ( #9829 )
2021-10-27 19:00:06 -07:00
Pavel Feldman
31faa7d9a7
chore: sort out base fixtures ( #9809 )
2021-10-27 08:28:53 -07:00
Joel Einbinder
c8addef03a
fix(monorepo): export package.json from every package ( #9803 )
2021-10-26 18:41:18 -04:00
Pavel Feldman
273122b761
chore: align internal test harness w/ @playwright/test ( #9796 )
2021-10-26 13:45:53 -07:00
Pavel Feldman
87c64b2c1c
chore: align client side instrumentations ( #9771 )
2021-10-26 11:13:35 -07:00
Pavel Feldman
5451808df1
chore: append sources to traces ( #9736 )
2021-10-25 18:56:57 -07:00
Joel Einbinder
f2888395a6
fix: support even older node 12 ( #9718 )
2021-10-22 15:59:52 -04:00
Pavel Feldman
2b9d7815b2
chore: enable html report by default ( #9639 )
2021-10-19 21:31:59 -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
Pavel Feldman
e37660b068
feat(api): expose step location ( #9602 )
2021-10-18 21:06:18 -07:00
Andrey Lushnikov
01c702adbb
chore: move "service" mode tests to experimental grid ( #9531 )
...
This patch moves service tests to use experimental grid.
Test changes:
- `proxy.spec.ts` - proxy setup is not supported at all in service mode.
This is because we already use proxy for browsers to properly resolve
localhost.
- `har.spec.ts` - tests disabled since connection port is different.
2021-10-15 16:11:53 -07:00
Pavel Feldman
75cfe5d1f5
chore: start adding html runner e2e tests ( #9518 )
2021-10-14 15:48:05 -07:00
Max Schmitt
96be17463e
feat(codgen): support positioned clicks in a canvas ( #9503 )
2021-10-14 17:37:29 +02: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
Joel Einbinder
c89d5a50dd
chore: migrate to monorepo ( #9421 )
2021-10-11 16:52:17 +02:00
Max Schmitt
b10140d9c2
chore: add reuse context to internal test suite ( #9359 )
2021-10-07 23:01:08 +02:00
Pavel Feldman
bc71d20d0f
feat(request): add global request fixture ( #9332 )
2021-10-06 10:09:27 -07:00
Pavel Feldman
913821f675
chore: roll Electron to 12.2.1 ( #9271 )
2021-10-01 19:40:47 -07:00
Dmitry Gozman
5633520f45
fix(selenium connect): register in gracefullyCloseAll for driver cleanup ( #9218 )
...
Otherwise, killing the driver does not cleanup sessions in the grid.
2021-09-29 14:54:24 -07:00
Max Schmitt
cd22072685
chore: enable object-curly-spacing in ESLint ( #9168 )
2021-09-27 18:58:08 +02:00
Pavel Feldman
241411ad42
chore: render expect in trace viewer ( #9141 )
2021-09-27 09:19:59 -07:00
Dmitry Gozman
2afe76d86d
feat(launch): connect to process.env.SELENIUM_REMOTE_URL instead of local launch ( #9056 )
2021-09-22 21:13:32 -07:00
Dmitry Gozman
018467911b
test: introduce some common test fixtures ( #9060 )
2021-09-21 16:24:48 -07:00
Dmitry Gozman
43213614a1
fix(test runner): after hooks step should not be nested ( #8969 )
2021-09-16 15:51:27 -07:00
Pavel Feldman
14bc663742
chrome: don't nest pw:api steps ( #8932 )
2021-09-15 11:34:23 -07:00
Pavel Feldman
aa76cb5610
fix(tracing): fix tests via tracking context close state ( #8906 )
2021-09-13 21:12:36 -07:00
Pavel Feldman
1925c85dfb
feat(report): render attachment as a part of failure ( #8903 )
2021-09-13 18:07:40 -07:00
Pavel Feldman
b76e993951
chore: remove log from htmlreport ( #8898 )
2021-09-13 18:07:15 -07:00
Pavel Feldman
665143d629
chore(report): don't generate file per test ( #8822 )
2021-09-09 17:35:31 -07:00
Yury Semikhatsky
81ae790288
feat(fetch): support ignoreHTTPSErrors ( #8795 )
2021-09-08 20:32:52 -07:00
Dmitry Gozman
e2b092c1a0
feat(html reporter): show log for pw:api and expect steps ( #8692 )
2021-09-03 13:08:17 -07:00
Dmitry Gozman
2b4a93972d
test: use ToT test runner for non-test-runner tests ( #8671 )
2021-09-03 11:22:25 -07:00
Dmitry Gozman
0f34cfe339
test: roll test runner to 1.15.0-next-1630432230000 ( #8599 )
2021-08-31 17:06:32 -07:00
Dmitry Gozman
bf13259fa9
test: roll test runner to aug-27 ( #8523 )
2021-08-27 16:26:51 -07:00
Max Schmitt
8189de42cf
test: fix package installation tests ( #8430 )
2021-08-25 13:34:54 +02:00
Dmitry Gozman
7818f5fa0b
test: add a tracing bot that collects a trace for most contexts ( #8316 )
2021-08-19 19:09:19 -07:00
Yury Semikhatsky
356d69ae3f
test: make borwsercontext-proxy tests use test proxy server ( #8318 )
2021-08-19 13:34:32 -07:00
Yury Semikhatsky
d42169aba1
test: proxy server fixture, new test for https via http proxy ( #8299 )
2021-08-19 07:36:03 -07:00
Pavel Feldman
4d7956c70b
chore: roll test runner to ToT ( #8291 )
2021-08-18 14:32:36 -07:00
Andrey Lushnikov
45f51239a6
chore: roll TestRunner to tip-of-tree ( #8168 )
2021-08-12 10:03:23 -07:00
Yury Semikhatsky
75981bc0aa
fix(tests): do not throw if page did not produce video ( #8112 )
...
Fixes #8103
2021-08-10 01:24:14 -07:00
Pavel Feldman
40fb9d85e0
feat(test-result): render image diff ( #8061 )
2021-08-07 15:47:03 -07:00
Pavel Feldman
559d6242f0
chore: roll test runner to ToT ( #8063 )
2021-08-07 02:11:01 -07:00
Pavel Feldman
efb4af8489
chore: roll test runner to ToT ( #8025 )
2021-08-06 16:58:08 -07:00
Pavel Feldman
a8d404cd29
feat(test-runner): basic html reporter ( #7994 )
2021-08-05 13:36:47 -07:00
Max Schmitt
869f8d541b
chore: PlaywrightClient/Server enhancements ( #7980 )
...
- ensure timeout results in a meaningful message
- add onDisconnect handler
2021-08-04 19:45:33 +02:00
Pavel Feldman
542019f3a1
chore: roll test runner to ToT ( #7977 )
2021-08-03 22:19:27 -07:00
Pavel Feldman
5803035c1b
feat(test-runner): introduce steps ( #7952 )
2021-08-02 17:17:20 -07:00
Pavel Feldman
07c1c4bfb1
chore: roll test runner to tot ( #7912 )
2021-07-29 09:42:42 -07:00
Pavel Feldman
b8cfce3b9d
chore: roll test runner to ToT ( #7896 )
2021-07-28 17:33:14 -07:00
Dmitry Gozman
642d6d4459
test: roll test-runner to 1.13.0-next-1626706866000 ( #7719 )
2021-07-19 09:10:34 -07:00
Max Schmitt
bc2f161a55
chore: roll test-runner to 1.13.0-next-1625774143000 ( #7519 )
2021-07-08 23:36:11 -07:00
Max Schmitt
b846ddda04
feat(download): introduce Download.cancel ( #7462 )
2021-07-06 09:38:50 +02:00
Max Schmitt
701624c484
chore: roll playwright-test to 1.13.0-next-1624575246000 ( #7291 )
2021-06-25 22:53:14 +02:00
Max Schmitt
4c6deaa449
test: added tests for WebSocket over Socks proxy ( #7235 )
2021-06-24 18:50:16 +02:00
Yury Semikhatsky
c0cd2d4579
feat: response interception ( #7122 )
2021-06-18 11:04:48 -07:00
Pavel Feldman
82a50b0e1d
fix(test-runner): property handle artifacts in context of preserveOutput ( #7181 )
2021-06-16 16:05:30 -07:00
Andrey Lushnikov
34d151a1f9
devops: introduce Docker tests ( #7157 )
...
Fixes #7139
2021-06-15 23:59:20 -07:00
Max Schmitt
604cf2b89f
roll(test-runner): to 1.13.0-next-alpha-jun-14-2021 ( #7111 )
2021-06-14 20:30:42 +02:00
Peng-Yu Chen
5f6d4a7b73
feat(download): adding a new Download._cancel
method ( #6236 )
2021-06-12 22:23:22 +02:00
Dmitry Gozman
eb01844710
chore(tests): roll stable test runner to jun-8-2021 ( #6951 )
2021-06-08 08:35:04 -07:00