Yury Semikhatsky
7a86bf4af6
chore: delete store.ts ( #29423 )
2024-02-08 12:55:18 -08:00
Pavel Feldman
84dea09cb9
fix(ct): resolve components used in tests during the vite build ( #29407 )
2024-02-07 20:39:45 -08:00
Dmitry Gozman
3331a40647
feat(test runner): tags/annotations ( #29248 )
...
API changes:
- `test(title, details, body)` where details contain `tag` and
`annotation`.
- similar `details` property added to `test.skip`, `test.fail`,
`test.fixme`, `test.only`, `test.describe` and other `test.describe.*`
variations.
- `TestProject.tagFilter`/`TestConfig.tagFilter` that supports logical
tag expressions with `(`, `)`, `and`, `or` and `not`.
- `--tag` CLI option to filter by tags.
- New annotations are available in `TestInfo.annotations` and
`TestCase.annotations`.
- New tags are available in `TestCase.tags`.
Reporter changes:
- `json` reporter includes new tags in addition to old `@smoke`-style
tags. **Breaking**: tags are now listed with the leading `@` symbol.
- `html` reporter filters by old and new tags with the same `@smoke`
token.
Fixes #29229 , fixes #23180 .
2024-02-07 16:31:25 -08:00
Dmitry Gozman
9e285ce919
docs: do not call custom expect message an "error message" ( #29390 )
...
Fixes #29378 .
2024-02-06 12:12:45 -08:00
Pavel Feldman
4bafe71eb1
chore: unconflict ct test ports ( #29332 )
2024-02-05 16:47:39 -08:00
Pavel Feldman
5f5e058e96
fix(fixtures): tear down base fixture after error in derived ( #29337 )
...
Fixes https://github.com/microsoft/playwright/issues/29325
2024-02-05 16:47:15 -08:00
Max Schmitt
8c007fd3fc
fix(toHaveScreenshot): stylePath as first arg ( #29372 )
2024-02-05 22:52:16 +01:00
Pavel Feldman
dd0ef72cd8
feat(tsconfig): respect tsconfig references ( #29330 )
...
Fixes https://github.com/microsoft/playwright/issues/29256
2024-02-02 16:18:44 -08:00
Dmitry Gozman
b9565ea26e
chore(test runner): refactor beforeAll/afterAll hooks and modifiers ( #29309 )
...
- Modifiers that only depend on the worker fixtures are implemented as
`beforeAll` hooks.
- Modifiers that depend on test fixtures are implemented as `beforeEach`
hooks.
- Pushed `_runAndFailOnError` down the stack, wrapping individual hooks
instead of the whole "before hooks" section.
- Reused the same code to run `beforeAll` and `afterAll` hooks and
modifiers.
**Behavior change**: `test.skip()` inside a `beforeAll` now skips the
hook and all tests in the suite.
2024-02-02 14:25:46 -08:00
Max Schmitt
a6e0af6767
feat: parse projects option as RegExp ( #29327 )
...
Fixes https://github.com/microsoft/playwright/issues/15128
Relates https://github.com/microsoft/playwright/pull/17244
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Yury Semikhatsky <yurys@chromium.org>
2024-02-02 23:05:20 +01:00
Pavel Feldman
fcd3c7b523
Revert "fix(ct): resolve paths before detecting JS" ( #29312 )
...
Reverts microsoft/playwright#29308
2024-02-01 21:11:30 -08:00
Pavel Feldman
eb8cbbbf62
fix(ct): resolve paths before detecting JS ( #29308 )
2024-02-01 21:06:31 -08:00
Pavel Feldman
4784139bb0
fix(test): do not allow mixing tests from different types ( #29284 )
...
Fixes https://github.com/microsoft/playwright/issues/29282
2024-02-01 11:59:56 -08:00
Yury Semikhatsky
a89dbe3813
devops: custom blob report name for test runner tests ( #29280 )
...
Otherwise uploaded reports all have clashing names report-1.zip and
report-2.zip.
2024-02-01 09:17:48 -08:00
Dmitry Gozman
cf6549687c
fix(trace viewer): reveal error location when it comes from the test ( #29268 )
...
Errors coming from the test runner do not have an associated `action`,
but have a `stack` that we can reveal.
2024-02-01 08:23:07 -08:00
Yury Semikhatsky
b5082e10fd
fix: do not retry missing snapshot errors ( #29272 )
...
When `updateSnapshots === 'missing'` we generate new expectations on the
first attempt and don't retry the test afterwards instead of trying it
retries-1 times and only writing new expectation on the last attempt.
This logic infects all serial mode suites that contain the test with
missing expectations, so they also will not be retried.
Reference https://github.com/microsoft/playwright/issues/29073
2024-01-31 15:33:38 -08:00
Tanay Vardhan
e9a8fc944c
fix: Add support for exif jpeg file formats ( #29208 )
2024-01-29 14:58:13 -08:00
Dmitry Gozman
5ee7179b13
fix(test runner): make TestTracing responsible for trace management ( #29181 )
...
... instead of a fixture.
Fixes #29133 , fixes #28733 , fixes #28476 .
2024-01-26 15:52:25 -08:00
Yury Semikhatsky
0113e8455b
fix: make TeleSuite.project work for all suites ( #29177 )
...
Fixes https://github.com/microsoft/playwright/issues/29173
2024-01-25 13:44:08 -08:00
Pavel Feldman
6a14b1dc51
chore: automatically detect the dev server ( #29176 )
2024-01-25 11:46:47 -08:00
Pavel Feldman
41c15cb176
chore: move vite root dir into template folder ( #29081 )
2024-01-23 09:40:05 -08:00
Yury Semikhatsky
fbf87ef904
fix: test.fail wrapper method ( #29112 )
...
Fixes https://github.com/microsoft/playwright/issues/29104
2024-01-22 19:47:27 -08:00
Pavel Feldman
71a48c2562
chore: migrate ct to vite5 ( #29033 )
...
Closes https://github.com/microsoft/playwright/issues/28607
2024-01-19 11:13:03 -08:00
Dmitry Gozman
b7d22b64e8
feat(merge): prepend bot name to global errors ( #29055 )
...
This way one can figure out where does the error come from.
An example merged report that exhibits the issue:
https://mspwblobreport.z1.web.core.windows.net/run-7563628632-1-2328b83af75801ab76bb06c214fee483cf5bc07c/index.html#?q=s%3Afailed%20s%3Aflaky
2024-01-18 15:11:32 -08:00
Yury Semikhatsky
c76f5294ce
fix: quote trace file path when printing error message ( #29052 )
...
Fixes https://github.com/microsoft/playwright/issues/29039
2024-01-18 14:23:12 -08:00
Pavel Feldman
ee3960529e
fix(ct): allow passing date, url, bigint as properties ( #29031 )
...
Closes: https://github.com/microsoft/playwright/issues/29028 ,
https://github.com/microsoft/playwright/issues/29027
2024-01-17 20:43:28 -08:00
Pavel Feldman
2328b83af7
test: add a props.children test ( #29026 )
...
Closes https://github.com/microsoft/playwright/issues/29023
2024-01-17 12:53:01 -08:00
Pavel Feldman
c82919859c
chore: add an image import component test ( #29016 )
...
Closes: https://github.com/microsoft/playwright/issues/22657
2024-01-17 09:06:02 -08:00
Pavel Feldman
1db18711a2
fix(ct): move import list into the compilation cache data ( #28986 )
2024-01-16 19:31:19 -08:00
Dmitry Gozman
e6d51cf7bd
chore: refactor actionability check to go through node-side retry ( #28982 )
...
This allows to inject a checkpoint in between the actionability checks.
Drive-by: cleanup `InjectedScriptPoll`-related code.
2024-01-16 19:11:41 -08:00
Dmitry Gozman
775ef30e43
fix(test runner): make TestCase.id not depend on the path separator ( #29010 )
...
Fixes #28991 .
2024-01-16 13:32:47 -08:00
Max Schmitt
7721f910b2
chore: roll stable-test-runner to 1.41.0-beta-1705101589000 ( #28993 )
2024-01-16 08:59:55 -08:00
jonghoonpark
4c0a972b69
feat(expect): Make toPass's option configurable by TestConfig ( #28231 )
...
Co-authored-by: jonghoon.park <jonghoon.park@lucentblock.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2024-01-16 12:28:38 +01:00
Pavel Feldman
92ad1b385c
chore: refactor import processing in ct ( #28975 )
2024-01-12 20:02:27 -08:00
Pavel Feldman
afb2582eaa
chore: render only react child ( #28775 )
...
Fixes https://github.com/microsoft/playwright/issues/28410
2023-12-22 17:15:49 -08:00
Pavel Feldman
fc5f34369a
chore: only highlight uncaught errors in source ( #28772 )
2023-12-22 14:19:53 -08:00
Pavel Feldman
eeb9e06d5e
chore: box step w/o modifying runtime errors ( #28762 )
2023-12-22 12:00:17 -08:00
Yury Semikhatsky
5f14d42723
Revert "fix: respect .only in --list mode" ( #28770 )
...
This reverts commit 9a5bfc54e5 .
As it breaks extension.
Reference #28709
2023-12-22 11:03:30 -08:00
Pavel Feldman
f5c57d0e98
chore: reuse image diff component in trace/html ( #28727 )
...
Fixes https://github.com/microsoft/playwright/issues/28685
2023-12-22 10:17:35 -08:00
Pavel Feldman
5d9e08ac61
chore: box soft steps ( #28749 )
...
Fixes https://github.com/microsoft/playwright/issues/28259
2023-12-21 12:16:03 -08:00
Yury Semikhatsky
6d583a2dbe
fix: exit from merge-reports in type: "module" projects ( #28725 )
...
Fixes https://github.com/microsoft/playwright/issues/28699
2023-12-19 16:49:25 -08:00
Yury Semikhatsky
dcaa5758f0
fix: respect .only in --list mode ( #28721 )
...
Fixes https://github.com/microsoft/playwright/issues/28709
2023-12-19 12:24:54 -08:00
George Griffiths
4c848c0daf
feat(expect): Allow expect timeout to be configured outside of the runner ( #28716 )
...
Fixes #28702
2023-12-19 10:55:05 -08:00
Yury Semikhatsky
9c845365f7
chore: revert TestProject.botName for this release ( #28670 )
...
This is essentially a revert of f88288d71d
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-15 09:48:34 -08:00
Pavel Feldman
d242ff67ef
chore: follow up to the stylePath review ( #28636 )
2023-12-14 08:19:24 -08:00
Pavel Feldman
afe90d648e
fix: do not generate api call steps inside named expects ( #28609 )
...
Fixes: https://github.com/microsoft/playwright/issues/28528
2023-12-13 09:06:02 -08:00
Max Schmitt
297cfdfc5f
chore: use ReadonlyArray for input parameters ( #28564 )
2023-12-12 16:22:48 -08:00
Dmitry Gozman
d2dc8eb1e3
fix(components): make sure defineConfig(c1, c2) works ( #28608 )
2023-12-12 14:01:01 -08:00
Yury Semikhatsky
411abdb752
feat: add fileName option to blob reporter ( #28525 )
...
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-06 20:44:06 -08:00
Yury Semikhatsky
2adfbf24a9
chore: roll stable test runner ( #28523 )
2023-12-06 14:21:01 -08:00
Yury Semikhatsky
f88288d71d
feat: config.botName for describing environment in the reports ( #28507 )
...
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-06 13:34:16 -08:00
Pavel Feldman
0a7a10d0f6
feat(vrt): allow providing screenshot style ( #28229 )
2023-11-30 17:42:45 -08:00
Pavel Feldman
92a0d24069
fix: restore timeout error name ( #28408 )
...
Fixes https://github.com/microsoft/playwright/issues/28404
2023-11-29 17:28:17 -08:00
Pavel Feldman
022b36332d
chore: do not add to the internal action logs ( #28365 )
...
Fixes https://github.com/microsoft/playwright/issues/28319
2023-11-27 16:43:47 -08:00
Dmitry Gozman
f61e445f2b
Revert "chore(test runner): remove fake skipped test results ( #27762 )" ( #28360 )
...
This reverts commit 210168e36d .
Fixes #28321 .
2023-11-27 16:08:20 -08:00
Yury Semikhatsky
dc8ecc3ca4
fix(merge): normalize path separators when merging across platforms ( #28227 )
2023-11-27 12:43:56 -08:00
Dmitry Gozman
62d4c3fe02
fix(defineConfig): do not add an empty project list to project-less configs ( #28224 )
...
Otherwise, merging two configs without `projects` property will create a
config with an empty project list, which is semantically different and
always leads to "No tests found".
2023-11-17 13:36:50 -08:00
Pavel Feldman
2bd7d67adc
chore: render testInfo errors in the Errors tab ( #28179 )
...
Fixes https://github.com/microsoft/playwright/issues/28056
2023-11-16 11:37:57 -08:00
Dmitry Gozman
19cfd0cc5e
chore: roll stable-test-runner to 1.40.0-beta-1700102862000 ( #28192 )
2023-11-16 10:14:56 -08:00
Pavel Feldman
25b9c4eb4a
chore: do not lose error name for js errors ( #28177 )
2023-11-15 18:27:32 -08:00
Dmitry Gozman
bf4c315b09
fix(types): explicit ExpectMatcherState type, optional Expect arg ( #28119 )
...
Fixes #28035 .
2023-11-13 18:37:50 -08:00
Yury Semikhatsky
53a78a315e
fix(merge): preserve original "rootDir" by default ( #27963 )
...
Fixes https://github.com/microsoft/playwright/issues/27877
2023-11-03 13:49:47 -07:00
Pavel Feldman
e84dd4d708
fix(ui): do not fail on clashing groups ( #27943 )
...
Fixes https://github.com/microsoft/playwright/issues/27929
2023-11-02 20:50:08 -07:00
Ben Scott
c59483c5fb
fix(tsconfig): handle tsconfig paths without a baseUrl ( #27846 )
2023-11-02 11:27:49 -07:00
Max Schmitt
5f366088be
chore: get rid of rimraf package ( #27790 )
...
This seems more reliable nowadays as rimraf.
https://github.com/microsoft/playwright/issues/27712
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-10-26 19:41:00 +02:00
Yury Semikhatsky
86c78c1e0f
fix(html): do not update total time when filtering tests ( #27808 )
...

Fixes #27758
2023-10-26 08:20:14 -07:00
Pavel Feldman
47733b04fb
chore: do not select after hooks automatically ( #27805 )
2023-10-25 17:05:06 -07:00
Dmitry Gozman
c8134bca5d
feat(html): show top-level errors ( #27763 )
...
Drive-by:
- extract `TestErrorView`;
- replace `data-test-id` with `data-testid` and `getByTestId()`.
---
<img width="1001" alt="top-level errors in html report"
src="https://github.com/microsoft/playwright/assets/9881434/2d6c0c52-8df1-46a9-b3fd-06ddc6f16796 ">
2023-10-24 09:35:07 -07:00
Dmitry Gozman
210168e36d
chore(test runner): remove fake skipped test results ( #27762 )
...
Fixes #27455 .
2023-10-24 09:31:30 -07:00
Dmitry Gozman
b8678ef902
chore(test runner): simplify some dispatcher logic ( #27732 )
...
- remove `onlyStartedTests` in favor of explicit branch with comments;
- produce one "test not found" error per test instead of a single large
error;
- extract `_failTestWithErrors` from `_massSkipTestsFromRemaining`.
2023-10-23 09:15:13 -07:00
Dmitry Gozman
85112be25c
fix(test runner): properly handle uncaught errors in test.fail() ( #27734 )
...
Before this fix, unhandled error during test.fail():
- marks this test as "interrupted";
- fails next test in the file with "fatal error".
After this fix:
- marks this test as "failed as expected";
- restarts worker for the next test.
2023-10-23 09:14:31 -07:00
Dmitry Gozman
d67515f6c1
chore(test runner): do not produce some of the fake skipped test results ( #27730 )
2023-10-20 17:01:46 -07:00
Pavel Feldman
f46c889449
chore: fix total progress reporting w/ deps ( #27716 )
2023-10-19 20:07:47 -07:00
Pavel Feldman
d003945a7b
chore(ui): do not watch output folders ( #27694 )
2023-10-19 15:53:57 -07:00
Dmitry Gozman
6e62a11643
fix(trace): EPERM on windows ( #27693 )
...
When merging trace files, we sometimes left open read streams from the
zip, which prevents it from being removed.
Fixes #27286 .
2023-10-19 11:14:17 -07:00
Sander
562938b271
fix(ct): baseURL playwright config ( #27689 )
...
closes: https://github.com/microsoft/playwright/issues/27627
2023-10-18 13:53:58 -07:00
Dmitry Gozman
fd82b2b3fa
feat(json report): add expected/unexpected/skipped/flaky stats ( #27685 )
...
Fixes #27498 .
2023-10-18 12:55:31 -07:00
Pavel Feldman
a54dbfdadf
chore: plumb the target close reason when test fails ( #27640 )
2023-10-16 20:32:13 -07:00
Max Schmitt
fd2fbe9d2f
fix: merge{Tests,Expects} via ESM imports ( #27630 )
...
Backport to 1.39.X?
Fixes https://github.com/microsoft/playwright/issues/27617
2023-10-17 00:09:44 +02:00
Pavel Feldman
f212fd1a83
chore: unify target closed errors ( #27540 )
2023-10-12 11:05:34 -07:00
Pavel Feldman
393bd36e0a
chore: composed->merge ( #27555 )
2023-10-11 13:56:27 -07:00
Dmitry Gozman
3a43aaa700
chore: roll stable-test-runner to 1.39.0-beta-1697048429000 ( #27553 )
2023-10-11 13:42:04 -07:00
Pavel Feldman
fd6bf8aa2c
chrome: improve error messages on vscode side ( #27521 )
2023-10-09 19:55:24 -07:00
Pavel Feldman
11a4b3f7f5
chore: remove parsed stack trace ( #27496 )
2023-10-09 17:04:16 -07:00
Pavel Feldman
70dbb9d83a
feat(trace): allow navigating from error to source ( #27464 )
2023-10-05 14:59:59 -07:00
Jim Hays
dcc8dcca73
Fix various typos ( Fixes #27396 ) ( #27391 )
...
Fixes https://github.com/microsoft/playwright/issues/27396
2023-10-04 19:56:42 -07:00
Dmitry Gozman
daba77644c
feat: composedExpect ( #27432 )
...
Allows to merge multiple expects with custom matchers added by
`expect.extend()`.
2023-10-04 15:01:25 -07:00
Yury Semikhatsky
ac48a47d33
feat: toHaveAttribute without value ( #27418 )
...
This time not doing it in other languages due to unjustified generator
complexity.
Fixes #27341
2023-10-04 09:27:28 -07:00
Dmitry Gozman
65ce4cd213
feat: expose composedTest() instead of test._extendTest() ( #27414 )
2023-10-03 13:26:30 -07:00
Pavel Feldman
d136b0aeb6
feat(step): allow boxing steps ( #27334 )
2023-09-29 09:44:00 -07:00
Sander
2032b64ee6
feat(ct): allow baseUrl and host config ( #27295 )
...
closes: https://github.com/microsoft/playwright/issues/27283
2023-09-26 16:32:51 -07:00
Yury Semikhatsky
d198784f1a
fix(blob): use reporters from the merge config ( #27301 )
...
Fixes https://github.com/microsoft/playwright/issues/27281
2023-09-26 11:41:17 -07:00
Pavel Feldman
aed86c98a8
chore(ct): allow using component as a property ( #27272 )
2023-09-25 17:00:52 -07:00
Dmitry Gozman
66eb3043f5
feat(json report): expose startTime and duration ( #27290 )
...
Fixes #27183 .
2023-09-25 10:58:55 -07:00
Pavel Feldman
a6a0257c88
feat(expect): allow chaining expects ( #27248 )
2023-09-22 12:12:17 -07:00
Dmitry Gozman
49fd9500fe
fix: handle worker process start failure ( #27249 )
...
Worker process start failure is reported as a test error and skips other
tests from the group.
If happened during stop (e.g. from a Ctrl+C) before worker has fully
initialized, this error is ignored.
Drive-by: send SIGINT in tests to the whole tree, to better emulate
Ctrl+C behavior.
2023-09-22 10:57:35 -07:00
Pavel Feldman
9fe037fb63
chore: populate matcherResult in web assertions ( #27133 )
...
Ref https://github.com/microsoft/playwright/issues/26929
2023-09-16 14:24:10 -07:00
Dmitry Gozman
3bcf9687e6
fix(test runner): make sure auto worker fixtures run before auto test fixtures ( #27131 )
...
Fixes #27114 .
2023-09-15 14:51:31 -07:00
Pavel Feldman
527d260cbf
chore: hide tracing calls from traces ( #27096 )
2023-09-15 12:55:49 -07:00
Max Schmitt
0d44405762
fix: custom expect matchers on Locator/Page/APIResponse instance ( #27117 )
...
Fixes https://github.com/microsoft/playwright/issues/27113
2023-09-15 18:05:44 +02:00
Yury Semikhatsky
ebf6a08290
fix: list tests only once ( #27103 )
...
Fixes #27087
2023-09-14 20:00:30 -07:00
Max Schmitt
26cbe69442
test: use intermediate merge report for JSON repoter ( #27092 )
2023-09-15 04:36:15 +02:00
David Paquette
3170963f42
fix: render JUnit attachment paths relative to outputFile ( #27024 )
2023-09-14 12:58:09 -07:00
Dmitry Gozman
603861c48d
fix: revert toMatchSnapshot deprecation ( #27089 )
...
- This reverts commit
8348f66107
landed in #26718 .
- Update docs to point towards `toHaveScreenshot`.
2023-09-14 12:52:41 -07:00
Max Schmitt
aa929bff3b
test: unflake 'filter should update stats' test ( #27085 )
...
It's not possible to calculate the total test duration of the tests in
the UI, since our `msToString` function is lossy. This patch unflakes
the
[test](https://github.com/microsoft/playwright/actions/runs/6183832112/job/16787806162?pr=27074#step:7:254 )
when it took longer than a second to start, by writing the test-ids to
the DOM, getting them into the Node.js process, and calculating their
test duration sum based on the JSON report.
Drive-by: I found a bug that we used the JSON report from the main
test-runner process rather than from the merge process, so the test IDs
were still old. (Without that change the `useIntermediateMergeReport`
tests were not passing.
2023-09-14 19:51:05 +02:00
Max Schmitt
4431a8366d
fix: collect stdio from forked processes ( #27074 )
...
A summary about the attempts we tried in
https://github.com/microsoft/playwright/pull/26931 for
https://github.com/microsoft/playwright/issues/26859 and
https://github.com/microsoft/playwright/issues/24591 .
1. attempt: collect all the stdio from the worker host.
- this made it hard to capture the live console logs for the live trace
2. attempt: collect all the stdio from the worker host, but keep
proxying `process.{stdout,stderr}.write`.
- this solved the live console logs problem, since we could still listen
on them
- we found out about a race that the stdout/stderr streams can still
buffer data while the test already had finished
- we created a best effort flush implementation but didn't like the
complexity it introduced to the project
3. attempt: keep things like they are but also listen to stdio from the
worker host
- this solves the race of console.log in the test (things stay like they
are)
- this keeps live trace working (things stay like they are)
- a known pitfall is that it could result in logs which don't end up in
the reporter onStdOut/onStdErr, but it is already a significant
improvement over how it was before.
- before: they were not getting displayed
- after: they are getting displayed and there is a low likelihood that
they don't end up in the reporter API if the write happens slightly
before a test finished.
Closes #26931
Fixes #26859
Fixes #24591
2023-09-14 18:34:26 +02:00
Dmitry Gozman
f9298cfff6
fix(tracing): unclash trace names between test and hooks ( #27063 )
...
Fixes #27048 .
2023-09-13 19:56:40 -07:00
Andrey Lushnikov
45d2a36453
chore: roll stable test runner to 1.38 beta ( #27066 )
2023-09-13 16:01:06 -07:00
Pavel Feldman
02c72e545b
feat(onEnd): allow overriding the exit code ( #27010 )
...
Fixes: https://github.com/microsoft/playwright/issues/26858
2023-09-12 13:37:30 -07:00
Max Schmitt
d0945192a4
feat: make it possible to filter by column in HTML report ( #27020 )
2023-09-12 22:13:15 +02:00
Max Schmitt
01ab703400
test: restore useIntermediateMergeReport=true test mode in html tests ( #26989 )
...
This got accidentally removed in
https://github.com/microsoft/playwright/pull/26799 .
2023-09-11 09:14:05 -07:00
Yury Semikhatsky
2feae015aa
chore: remove details from markdown reports ( #26961 )
...
- remove error details from the reports
- collapse flaky tests by default
- limit comment to 65365 character
GitHub API has comment length limit 65536 chars:
```
Unhandled error: HttpError: Validation Failed: {"resource":"IssueComment","code":"unprocessable","field":"data","message":"Body is too long (maximum is 65536 characters)"}
```
2023-09-08 17:49:34 -07:00
Dmitry Gozman
186f86905c
chore: make @playwright/test depend on playwright ( #26946 )
2023-09-08 14:23:35 -07:00
Pavel Feldman
167c35ca66
chore: store scroll positions in trace viewer ( #26938 )
2023-09-07 17:14:39 -07:00
Pavel Feldman
a339bead09
chore: implement faster ansi2html format for console ( #26826 )
2023-09-01 09:09:47 -07:00
Pavel Feldman
4948920437
fix(ui): do not log from beforeAll twice ( #26799 )
...
Fixes https://github.com/microsoft/playwright/issues/26790
2023-08-31 17:34:15 -07:00
Dmitry Gozman
fa286de0b3
fix(test runner): extract FailureTracker helper ( #26757 )
...
This way we can reuse it for:
- tracking `maxFailures` across phases;
- tracking failures for runner;
- tracking failures for `runJob` helper class later on.
Fixes #26344 .
2023-08-31 15:32:29 -07:00
Dmitry Gozman
6d85ba1494
fix: remove connectInsteadOfLaunching ( #26828 )
2023-08-31 15:29:04 -07:00
Pavel Feldman
c209d7e708
chore: more network panel polish ( #26780 )
2023-08-29 22:20:28 -07:00
Pavel Feldman
34c6197f9e
chore: include start/endTime and duration in onEnd report callback ( #26760 )
...
Fixes https://github.com/microsoft/playwright/issues/23637
2023-08-29 10:56:21 -07:00
Pavel Feldman
38f1e62642
chore: use custom expect message in trace step ( #26752 )
2023-08-28 14:48:24 -07:00
Dmitry Gozman
8348f66107
feat: deprecate toMatchSnapshot for buffers ( #26718 )
...
These are usually used for screenshots instead of toHaveScreenshot.
String-based snapshots are left as is.
<img width="836" alt="deprecated"
src="https://github.com/microsoft/playwright/assets/9881434/d02818da-7eea-47fc-8ea8-4104b0dd49b5 ">
---
Also deemphasized toMatchSnapshot throughout all docs.
Fixes #26612 .
2023-08-25 18:20:01 -07:00
Pavel Feldman
376f2850b3
chore: flaky tests fixes ( #26714 )
2023-08-25 12:43:50 -07:00
Max Schmitt
9ae77a71fd
feat: print message if maxFailures has reached ( #26322 )
...
Fixes https://github.com/microsoft/playwright/issues/24239
2023-08-25 19:06:49 +02:00
Pavel Feldman
e7bd1864a8
chore: do not add plugins to config twice ( #26670 )
2023-08-24 16:19:57 -07:00
Dmitry Gozman
c970179551
fix(resolver): allow importing packages with non-index main script ( #26692 )
...
Regressed in https://github.com/microsoft/playwright/pull/23254 .
Fixes #26650 .
2023-08-24 14:09:00 -07:00
Dmitry Gozman
c90c943154
fix(test.fail): expect() failure should not skip future tests ( #26663 )
...
We used to stop the worker that would skip future tests. Regressed in
https://github.com/microsoft/playwright/pull/11850 .
Fixes #26435 .
2023-08-24 08:32:14 -07:00
Dmitry Gozman
81cc39ea6e
feat(expect): narrow down available assertions for Page/Locator/APIResponse ( #26658 )
...
Fixes #26381 .
2023-08-23 13:14:39 -07:00
Dmitry Gozman
218955c155
fix(test runner): make sure static annotations are reported for skipped tests ( #26634 )
...
Fixes #26397 .
2023-08-23 08:40:12 -07:00
Pavel Feldman
f4f9e526a2
chore: tolerate css imports ( #26626 )
...
Fixes https://github.com/microsoft/playwright/issues/24580
2023-08-23 08:32:23 -07:00
Pavel Feldman
00e6540799
feat(ui): show test trace events live ( #26619 )
2023-08-22 15:46:41 -07:00
Pavel Feldman
65aa062ea1
fix(console): make format console message w/o args ( #26620 )
...
Fixes https://github.com/microsoft/playwright/issues/26600
2023-08-22 14:29:35 -07:00
Pavel Feldman
1ceaa923ea
chore: create artifacts dir in the test runner ( #26594 )
2023-08-21 19:41:10 -07:00
Pavel Feldman
c3c3c7f53c
chore: decorate console message sources ( #26588 )
2023-08-21 16:05:27 -07:00
Pavel Feldman
f83d81956d
chore: make console stream live in ui mode ( #26562 )
2023-08-21 10:59:37 -07:00
Richard Blažo
bcc30bc71e
feat: add title for before and after hooks ( #26523 )
2023-08-21 09:50:22 -07:00
Pavel Feldman
41c312cd04
chore: fix ui mode to show screenshots ( #26563 )
2023-08-20 14:47:18 -07:00
Pavel Feldman
09bb866333
chore: format console message from page ( #26555 )
2023-08-19 16:13:42 -07:00
Max Schmitt
75ed251c9e
fix: download of attachments in UI Mode ( #26407 )
...
Fixes https://github.com/microsoft/playwright/issues/26326 .
2023-08-17 10:57:28 +02:00
Marcin Strzyz
42543a48a7
fix: fixed PW_TEST_HTML_REPORT_OPEN + more type safe + doc ( #24571 )
...
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-08-17 09:48:59 +02:00
Pavel Feldman
a705d68c8a
chore: filter actions, console and network based on the timeline window ( #26509 )
2023-08-16 16:30:17 -07:00
Pavel Feldman
929a849265
chore: fix .only in dependent tests ( #26503 )
...
Fixes https://github.com/microsoft/playwright/issues/26492
2023-08-16 13:39:08 -07:00
Max Schmitt
4c4525c9e0
chore: make html report produce named attachments ( #26421 )
...
https://github.com/microsoft/playwright/issues/26326
2023-08-16 18:06:04 +02:00
Max Schmitt
bd988b34a7
chore: allow calling spawnSync on Node.js file inside test ( #26429 )
...
Fixes https://github.com/microsoft/playwright/issues/24516
Relates https://github.com/microsoft/playwright/pull/16733
2023-08-11 18:37:14 +02:00
Yury Semikhatsky
ad9d20311a
fix(merge): allow reports with same name as input ( #26413 )
2023-08-10 12:47:31 -07:00
Yury Semikhatsky
d44a127014
chore: delete raw reporter ( #26391 )
...
Build HTML reporter using TeleReceiver's structures directly, this saves
us unnecessary memory allocation for the intermediate structures.
2023-08-09 22:01:44 -07:00
Pavel Feldman
08d6abab4a
chore: allow merging defineConfig ( #26390 )
2023-08-09 17:23:34 -07:00
Dmitry Gozman
cadc3153f7
fix(test runner): failed + skipped = flaky ( #26385 )
...
Fixes #17652 .
2023-08-09 16:35:14 -07:00
Yury Semikhatsky
bc2c7946bb
fix: do not throw when merging into blob report ( #26355 )
...
We cannot import a Symbol to isomorphic code from config. Instead,
__projectId property is used.
2023-08-08 14:47:12 -07:00
Yury Semikhatsky
8fcb6383ce
chore(blob): store playwright user agent ( #26337 )
2023-08-08 10:39:48 -07:00
Yury Semikhatsky
7516d6a914
chore: roll stable runner to Aug 7 ( #26334 )
2023-08-07 16:27:08 -07:00
Dmitry Gozman
27c15b705d
fix(blob): replace projectSuffix with reportName ( #25017 )
...
Always ensure unique project/test ids across blobs.
Show `reportName` as a label in the html report.
References #24451 .
2023-08-07 13:38:09 -07:00
Andrey Lushnikov
fa8f3f6454
fix: use snapshotPath instead of expectedPath for image diffs ( #24567 )
...
This opens a road to the "accept new screenshot" button in
Playwright tools.
References https://github.com/microsoft/playwright/issues/24310
2023-08-07 04:42:35 -07:00
Yury Semikhatsky
3eb59b873a
chore: roll stable test runner to Aug 6 ( #26310 )
2023-08-06 09:56:36 -07:00
Yury Semikhatsky
6c3142959d
fix(blob): store startTime as a number ( #24620 )
...
Turns out the Date objects have noticeable footprint on large suites and
storing them as umber is much cheaper, e.g.:

2023-08-04 16:06:23 -07:00
Pavel Feldman
b3ce913551
Revert "chore: allow calling spawnSync on Node.js file inside test" ( #24611 )
...
Reverts microsoft/playwright#24539
2023-08-04 09:01:38 -07:00
Yury Semikhatsky
9575867f1c
fix(blob): throw if blob report has newer version than the merger ( #24593 )
2023-08-03 15:11:34 -07:00
Max Schmitt
2193903d03
chore: allow calling spawnSync on Node.js file inside test ( #24539 )
...
Fixes https://github.com/microsoft/playwright/issues/24516
Relates https://github.com/microsoft/playwright/pull/16733
2023-08-04 00:03:14 +02:00
Yury Semikhatsky
8e2f33673b
chore(blob): change file name to report{-suffix}{-shard}.zip ( #24592 )
2023-08-03 13:23:30 -07:00
Yury Semikhatsky
a867e738db
chore(merge): console status updates ( #24559 )
2023-08-02 14:49:06 -07:00
Yury Semikhatsky
f5d069541d
chore(blob): add version to metadata ( #24556 )
2023-08-01 16:06:06 -07:00
Yury Semikhatsky
8da37b364b
chore(blob): zip output directory by default ( #24536 )
...
Changed the logic to add attachment to the zip in onEnd rather than
onTestEnd because attachment files can be deleted if e.g. preserveOutput
option is specified. Instead we add files once all workers have been
shut down. On a simple run with 1000 tests each adding 1Mb attachment
the overall time difference is 49s (streaming attachments) v 1m9s
(attachments added in the end).
2023-08-01 15:21:23 -07:00
Dmitry Gozman
d92fe16b76
fix(blob report): default location relative to package.json ( #24481 )
...
Also:
- remove `blob-report` directory at the start;
- markdown's `report.md` next to package.json;
- use default location in playwright's workflows.
References #24451 .
2023-07-28 15:49:31 -07:00
Dmitry Gozman
9c70a75d48
fix(merge): make sure testId from different blobs are unique ( #24475 )
...
Fixes a scenario where each shard runs the same setup project.
References #24451 .
2023-07-27 18:54:00 -07:00
Dmitry Gozman
4be1e479ea
fix(artifacts): only attach screenshot when it succeeds ( #24406 )
...
Fixes #24378 .
2023-07-26 15:22:04 -07:00
Dmitry Gozman
ed99ac7395
fix(sigint): make sure we do not add handler twice ( #24413 )
...
In the following scenario, we were adding SIGINT handler twice, but
removing it just once:
- Task runner starts testing, creates SigIntWatcher, installs SIGINT
handler.
- Press Ctrl+C, task runner interrupts, disarms SigIntWatcher, SIGINT
handler is not removed due to 1000ms cooldown.
- Task runner starts cleanup, creates SigIntWatcher, installs another
SIGINT handler.
- Cleanup finishes, SigIntWatcher disarms, could remove or not remove
SIGINT handler based on timing (same 1000ms cooldown). In any case, we
have one or two SIGINT handlers still on.
- HTML reporter hangs in onExit, while we still have SIGINT handler up,
so Ctrl+C does not exit.
Regressed in #24265 .
2023-07-25 18:35:38 -07:00
Dmitry Gozman
ed14bf2103
test: replace sendSIGINTAfter with interactWithTestRunner ( #24411 )
...
This way we can send multiple SIGINTs in tests.
2023-07-25 15:46:39 -07:00
Dmitry Gozman
9d0bba9c99
fix(tracing): do not throw on missing attachments ( #24409 )
...
Fixes #24378 .
2023-07-25 14:32:56 -07:00
Pavel Feldman
4ba6d789bc
Revert "chore: refactor timeout manager to use scopes (1) ( #24315 )" ( #24382 )
...
This reverts commit f5df0940c9 .
2023-07-24 14:09:20 -07:00
Yury Semikhatsky
6a3721eb9c
chore: delete --attachments option from merge-reports command ( #24350 )
...
We recommend uploading all resources along with the generated report. If
need be we'll reconsider adding the option later.
2023-07-21 13:15:00 -07:00
Pavel Feldman
f5df0940c9
chore: refactor timeout manager to use scopes (1) ( #24315 )
2023-07-20 17:21:21 -07:00
Dmitry Gozman
767addec8c
chore: make sure to call task's teardown if it has ever started ( #24317 )
...
This way things like WebServerPlugin can cleanup after themselves even
if they failed to start or were interrupted mid-way.
2023-07-20 17:16:22 -07:00
Yury Semikhatsky
b2965158d3
chore: roll stable test runner to July 19 ( #24314 )
2023-07-20 15:40:57 -07:00
Max Schmitt
1288519915
fix(ui-mode): run teardown handlers with Command + C ( #24267 )
...
Fixes https://github.com/microsoft/playwright/issues/23907
2023-07-19 17:50:25 +02:00
Pavel Feldman
879ddb73b0
chore: show last poller error on test timeout ( #24292 )
2023-07-18 17:03:26 -07:00
Marcin Strzyz
d5e7b4f16f
chore: update rimraf package to version 4 to eliminate "promisify" ( #24190 )
...
Migrate to version 4 which returns a promise rather than leverages a
callback. -> https://www.npmjs.com/package/rimraf?activeTab=readme
- contains its own types, eliminate "@types/rimraf"
- Parameter `maxBusyTries` changed to `maxRetries`
2023-07-18 19:58:07 +02:00
Yury Semikhatsky
d0280ec8c7
chore(blob): drop shard number from report name ( #24270 )
...
We store shard number in the report metadata event and then sort shard
files by shard number. This guarantees that within each project sharded
events will always go in stable order.
2023-07-18 09:29:25 -07:00
Pavel Feldman
5ff1fadd7b
chore: apply only filtration to deps ( #24268 )
2023-07-17 16:48:52 -07:00
Yury Semikhatsky
15b9e5afdb
fix: print fatal and no snippet errors in markdown report ( #24263 )
2023-07-17 13:50:00 -07:00
Pavel Feldman
af3e735147
chore: additional test for setup/teardown ( #24261 )
2023-07-17 12:29:16 -07:00
Pavel Feldman
49c1f9eb02
feat(ui): run deps in UI mode if dep projects are checked ( #24245 )
2023-07-15 15:11:31 -07:00
Yury Semikhatsky
d92db9a513
devops: always create blob report on CI, write PR number within action ( #24241 )
2023-07-14 15:10:29 -07:00
Yury Semikhatsky
3616023cf6
chore: markdown report details ( #24237 )
2023-07-14 12:32:25 -07:00
Pavel Feldman
5d799606c3
chore: resolve top-level vs dependency after cli filtering ( #24216 )
2023-07-13 17:54:08 -07:00
Max Schmitt
57cca1d96e
Revert "fix: do not collide with other tests when test names have special chars ( #23414 )" ( #24213 )
...
This reverts commit 4b1b4dc23b .
https://github.com/microsoft/playwright/issues/24184
Reopens https://github.com/microsoft/playwright/issues/23386
2023-07-13 20:03:02 +02:00
Max Schmitt
a0b0752662
fix: encode launch options correctly when reusing browser ( #24174 )
...
Fixes https://github.com/microsoft/playwright/issues/24157
2023-07-12 16:40:55 +02:00
Pavel Feldman
63915dc07a
feat(trace): render Node console messages in trace ( #24139 )
2023-07-10 18:36:28 -07:00
Andrey Lushnikov
94d6b1210b
fix: do not create empty directories for successful snapshot tests ( #24127 )
...
Fixes https://github.com/microsoft/playwright/issues/15600
2023-07-10 09:45:24 -07:00
Andrey Lushnikov
9af2b518f2
fix: exclude tracesDir option from launchOptions fixture ( #24086 )
...
Fixes https://github.com/microsoft/playwright/issues/23645
2023-07-06 13:31:44 -07:00
Pavel Feldman
608e336dba
fix(error): create a step for raw runtime error ( #24057 )
...
Fix https://github.com/microsoft/playwright/issues/23850
2023-07-06 10:48:12 -07:00
Pavel Feldman
566b277ce8
fix(steps): only propagate soft errors up the hierarchy ( #24054 )
...
Fixes https://github.com/microsoft/playwright/issues/23979
2023-07-05 15:30:53 -07:00
Pavel Feldman
df57fb594c
fix(trace): render items under expect.toPass ( #24016 )
...
Fixes: https://github.com/microsoft/playwright/issues/23942
2023-07-05 11:20:28 -07:00
Dmitry Gozman
7e310f79af
chore: migrate builtin reporters to ReporterV2 ( #23985 )
...
This allows builtin reporters to handle stdio between onConfigure and
onBegin.
Fixes #23539 .
2023-06-30 16:21:31 -07:00
Dmitry Gozman
86c1abd934
chore: introduce ReporterV2 interface ( #23983 )
2023-06-30 13:36:50 -07:00
Dmitry Gozman
92c738b14a
test: unflake some tests ( #23984 )
2023-06-30 13:08:18 -07:00
Dmitry Gozman
e28312ba63
chore: call onEnd(result) on InternalReporter ( #23972 )
...
Drive-by: fix watch mode not running global teardown.
2023-06-29 17:03:10 -07:00
Max Schmitt
4b1b4dc23b
fix: do not collide with other tests when test names have special chars ( #23414 )
...
Fixes https://github.com/microsoft/playwright/issues/23386
2023-06-27 10:34:31 +02:00
Yury Semikhatsky
6a6ff9cf6a
feat: markdown report ( #23819 )
...
Simple markdown report generator. Can be used when posting updates to
GitHub PRs:
<img width="632" alt="image"
src="https://github.com/microsoft/playwright/assets/9798949/ea7e4bfa-477a-4cad-9cc3-00b1f8a314b1 ">
2023-06-20 12:11:32 -07:00
Dmitry Gozman
2c8dd67b0e
fix(test runner): improve error message for non-stable test titles ( #23792 )
...
Fixes #23779 .
2023-06-19 14:13:11 -07:00
Yury Semikhatsky
f6d86c20f3
chore: run more reporter tests through blob report, some fixes ( #23765 )
2023-06-16 21:30:55 -07:00