Commit graph

425 commits

Author SHA1 Message Date
Pavel Feldman d7710f0c3e
chore: do not exit UI mode upon page reload (#30135) 2024-03-26 15:49:44 -07:00
Dmitry Gozman b9b06cb010
chore: mark version 1.44.0-next (#30129) 2024-03-26 13:44:10 -07:00
Pavel Feldman 0bf635ecce
chore: ensure max failures exit yields erroneous status code (#30120)
Fixes https://github.com/microsoft/playwright/issues/30118
2024-03-26 09:20:13 -07:00
Dmitry Gozman 051afb9ce0
fix(test runner): update fixture teardown error message (#30109)
With the recent change that gave after hooks a separate timeout, fixture
teardown does not imply that "test finished successfully, but fixture
teardown was slow".
2024-03-25 17:04:03 -07:00
Pavel Feldman 7039ad0d11
chore: follow up to the api review for test server (#30097) 2024-03-25 15:42:58 -07:00
Dmitry Gozman 911d8effb9
feat(test runner): do not mock tty in the worker process (#30107)
This was historically done to make `console.log()` have colors. However,
this makes any other code that checks `process.stdout.isTTY` incorrectly
assume real TTY support.

Node18 and Node20 now respect `FORCE_COLOR=1` in console, so our default
behavior of forcing colors in the worker process just works out of the
box. See https://github.com/nodejs/node/pull/48034.
2024-03-25 15:31:58 -07:00
Dmitry Gozman 95d649b406
feat: address api review feedback for 1.43 (#30066)
- Update docs for `trace: retain-on-first-failure`.
- Update docs for `devtools` option.
- Rename `Locator.enterFrame()` to `Locator.contentFrame()`.
- Rename `FrameLocator.exitFrame()` to `FrameLocator.owner()`.
2024-03-25 07:42:13 -07:00
Pavel Feldman 1539cde034
chore: allow passing path to config to the test server (#30068) 2024-03-22 16:04:59 -07:00
Pavel Feldman ee9432b9da
chore: send test params over the wire in ui mode (#30046) 2024-03-22 13:49:28 -07:00
Yury Semikhatsky a511731f55
fix(html): keep projects from different bots separate (#30051) 2024-03-22 10:02:00 -07:00
Pavel Feldman a9fc4de37e
chore: queue run and list commands from ui (#30033) 2024-03-21 14:28:07 -07:00
Dmitry Gozman 3e73a6ce69
feat(test runner): show multiple errors, at most one per stage (#30024)
Previously, there was at most one "hard error", as opposite to multiple
"soft errors". This was done to preserve the historic behavior at the
time of introducing multiple `TestInfo.errors`.

With this change, every user callback that is executed `withRunnable()`
can throw an error and/or timeout, and both of these will end up in
`TestInfo.errors`.

Additionally, there is at most one "unhandled exception" error, to avoid
flooding the report with mass failures.

Drive-by: remove boolean arguments from `_failWithError()`.

Fixes #29876.
2024-03-20 21:01:30 -07:00
Pavel Feldman 8a1ff34578
chore: split ui mode view into files (#30029) 2024-03-20 16:00:35 -07:00
Pavel Feldman 48ccc9cbcd
chore: prepare to reuse test server from ui mode (6) (#30008) 2024-03-20 13:43:26 -07:00
Pavel Feldman 0a22a86e2e
chore: prepare to reuse test server from ui mode (5) (#30005) 2024-03-19 14:08:21 -07:00
Pavel Feldman 54aca430b0
chore: prepare to reuse test server from ui mode (4) (#29995) 2024-03-19 13:00:49 -07:00
Dmitry Gozman be1af15d57
feat: always enable ESM loader with the new API (#29991)
It does not require a process restart anymore, so safe to enable.

Fixes #29747.
2024-03-18 21:54:25 -07:00
Dmitry Gozman b41b802662
fix(test runner): avoid dependency tracking colliding between esm and cjs (#29994)
When collecting dependencies both from CJS loader and from ESM loader,
the latter would overwrite the dependencies set instead of appending.

Also make sure cts/cjs/mts/mjs are all supported equally.

References #29747.
2024-03-18 17:17:58 -07:00
Pavel Feldman c7b074d39e
chore: prepare to reuse test server from ui mode (3) (#29989) 2024-03-18 17:14:21 -07:00
Yury Semikhatsky 35db70ea1d
chore: trim file names longer than 60 chars (was 100) (#29725)
Test-specific output dir and snapshot names are trimmed to 60 chars
instead of just 100. The snapshot names are still trimmed at 100 chars
for backwards compatibility.


Reference https://github.com/microsoft/playwright/issues/29719
2024-03-18 12:53:15 -07:00
Pavel Feldman ef4438ee99
chore: prepare to reuse test server from ui mode (2) (#29966) 2024-03-18 09:59:02 -07:00
Pavel Feldman 6faadf5160
chore: prepare to reuse test server from ui mode (#29965) 2024-03-18 09:50:11 -07:00
Pavel Feldman 94348bb3c5
chore: align test tree with vscode (#29864) 2024-03-14 15:44:35 -07:00
Yury Semikhatsky 166d2d4fde
chore: separate results for repeated snapshot names (#29880)
Reference #29719
2024-03-12 16:10:43 -07:00
Dmitry Gozman 88e80cf948
chore(test runner): simplify TimeoutManager and TimeoutRunner (#29863) 2024-03-11 15:43:50 -07:00
Yury Semikhatsky 59228f19ce
fix: tty.WriteStream method stubs for process.stdout/stderr (#29865)
Fixes #29839
2024-03-11 10:11:16 -07:00
Yury Semikhatsky 7f6f17d1c3
chore: simplify toMatchSnapshot names calculation (#29862)
Reference https://github.com/microsoft/playwright/issues/29719
2024-03-10 11:11:35 -07:00
Dmitry Gozman d214778548
chore(test runner): move timeout handling to the top, stop inheriting runnable (#29857) 2024-03-08 15:19:36 -08:00
Dmitry Gozman 006ee7f3b0
feat: separate timeout for after hooks (#29828)
Instead of sharing the timeout with the test, and then extending it when
test times out, we give after hooks a separate timeout.
2024-03-06 12:31:54 -08:00
Lukas Bockstaller 425f737eb6
feat: exposes tags in testInfo (#29794)
Fixes #29793.

---------

Signed-off-by: Lukas Bockstaller <lukas.bockstaller@everest-erp.com>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-03-06 08:33:06 -08:00
Dmitry Gozman 1d4bdc6898
chore(test runner): make runAsStage throw and catch errors explicitly (#29814) 2024-03-05 16:35:11 -08:00
Dmitry Gozman a3ed799cd5
fix(tsconfig): when extending, retain pathsBasePath from the original config (#29822)
This fixes a case where we incorrectly used the final config's base path
when resolving relative path mappings in the absence of the baseUrl.

Fixes #29816.
2024-03-05 16:34:39 -08:00
Pavel Feldman 8bf8091cb1
chore: extract the tele test tree (#29824) 2024-03-05 15:11:56 -08:00
Pavel Feldman e314b83e56
chore: iterate towards tele reporter reuse in vscode (2) (#29812) 2024-03-04 19:52:20 -08:00
Dmitry Gozman 5eb8fea616
chore: rewrite worker main through TestInfoImpl._runAsStage (#29644) 2024-03-04 19:36:58 -08:00
Pavel Feldman 743a6ffe1d
chore: iterate towards tele reporter reuse in vscode (#29803) 2024-03-04 11:08:40 -08:00
Pavel Feldman 68284b0505
chore: inject string pool into the tele receiver (#29781) 2024-03-04 08:46:32 -08:00
Pavel Feldman ef924c14e7
chore: do not use project id in telereporter (#29776) 2024-03-01 21:44:08 -08:00
Pavel Feldman bbcc3c1238
chore: remove private config usage from telereporter (#29771) 2024-03-01 13:14:12 -08:00
Pavel Feldman d0cc5871d8
chore: remove private suite from tele reporter (#29752) 2024-03-01 11:30:28 -08:00
Renan Greca 4e0bd6286e
docs: Improved JSDoc for expect.toPass (#29722) 2024-03-01 10:51:23 -08:00
Pavel Feldman ff16d7960c
fix(tsload): fix tsconfig inheritance resolution (#29766)
Fixes https://github.com/microsoft/playwright/issues/29731
2024-03-01 09:36:04 -08:00
Yury Semikhatsky c08a4e72d1
chore: call testInfo.snapshotPath directly (#29755)
Reference https://github.com/microsoft/playwright/issues/29719
2024-02-29 16:59:39 -08:00
Pavel Feldman 99744d0683
chore: normalize telereceiver type imports (#29745) 2024-02-29 12:31:07 -08:00
Stevan Freeborn 52b803ecf5
feat(trace mode): add on-first-failure mode for traces (#29647)
Implements the changes suggested in #29531
2024-02-28 14:39:18 -08:00
Pavel Feldman 9d0430fa26
chore: strengthen linting (#29669) 2024-02-26 16:52:28 -08:00
Yury Semikhatsky 01846b954d
chore: mark 1.43.0-next (#29670) 2024-02-26 16:45:25 -08:00
Pavel Feldman 7eb910a652
chore: enable eslint for js (#29639) 2024-02-26 09:39:21 -08:00
Pavel Feldman 6b5e273b6d
chore: reuse test server wire for reporter events (#29640) 2024-02-23 15:51:20 -08:00
Dmitry Gozman 8d9c67ac5d
chore(test runner): do not nest fixture setups inside each other, similar to teardown (#29619) 2024-02-23 14:47:13 -08:00
Pavel Feldman a3aea813bc
chore: implement server-based list files (#29633) 2024-02-23 08:29:44 -08:00
Pavel Feldman 2ca45ff948
chore: use test server as a singleton (#29630) 2024-02-22 15:56:38 -08:00
Pavel Feldman ee93136132
chore: streamline config loader (#29627) 2024-02-22 15:14:13 -08:00
Pavel Feldman ac0787d0c8
chore: expose find related files over test server (#29604) 2024-02-22 13:37:24 -08:00
Pavel Feldman 82b17bdda1
chore: mark server-related fixture options as such (#29602) 2024-02-21 17:04:36 -08:00
Pavel Feldman ba72f7e429
chore: an iteration on test server (#29589) 2024-02-21 09:27:48 -08:00
Pavel Feldman a023cd1f57
fix(output): clear output before global setup (#29584) 2024-02-20 14:24:59 -08:00
Dmitry Gozman f9aebda5db
fix(fixtures): attribute teardown step to the right TestInfo instance (#29523) 2024-02-20 12:35:43 -08:00
David 593feea166
fix: use addEventListener instead of onmessage in portTransport.ts (#29581) 2024-02-20 10:04:26 -08:00
Pavel Feldman d573c515a3
chore: add test server stub (#29568) 2024-02-20 09:56:33 -08:00
Pavel Feldman a99652b0d9
chore: remove clearCompilationCache, do not push cache it into loader… (#29548) 2024-02-19 10:21:05 -08:00
Dmitry Gozman f414227ed8
chore(test runner): make FixturePool.registrations private (#29539)
This way everyone resolves through a public function instead of a map
lookup, which is sometimes wrong.
2024-02-16 20:29:33 -08:00
Yury Semikhatsky f3fde992eb
chore: remove --project-grep, add wildcard support (#29537)
Reference #15128
2024-02-16 19:18:00 -08:00
Pavel Feldman 4f1d8cdd63
chore: hide test server related cli commands (#29532) 2024-02-16 14:32:44 -08:00
Dmitry Gozman 269a293ba1
chore(test runner): allow TestInfoImpl without a TestCase (#29534)
This will be useful to run `beforeAll`/`afterAll` hooks with a separate
`TestInfo` instance, as well as run use helpers like
`_runAndFailOnError()` during scope teardown.
2024-02-16 12:43:13 -08:00
Dmitry Gozman dbf0b25146
chore(test runner): do not rely on zones for fixture steps (#29519) 2024-02-16 10:51:45 -08:00
Dmitry Gozman dc9cddde95
chore: do not rely on zones for predefined steps (#29485)
This fixes some edge cases where fixtures and steps inside them were
attached to the wrong parent (see the new test).
This will also allow to replace some `runAsStep` calls with a flat list
of tasks to do that do not rely on lexical scope.
2024-02-15 12:49:08 -08:00
Dmitry Gozman 08afb34c14
chore(test runner): make timeout error an Error (#29515) 2024-02-15 11:38:13 -08:00
Dmitry Gozman bd5403dcad
chore: remove --tag and tagFilter (#29468)
This makes new tags filtered by the `grep`. New `TestCase.tags` API now
includes both old and new tags.
2024-02-15 11:37:16 -08:00
Pavel Feldman 217c0618df
chore: rename find-related-tests to find-related-test-files (#29483) 2024-02-13 15:40:49 -08:00
Pavel Feldman 7aef5249d8
chore: pass the private data to the runner via config (#29467) 2024-02-13 09:34:03 -08:00
Dmitry Gozman f605a5009b
fix(esmLoader): do not serialize the whole compilation cache after each import (#29464)
Instead, send the newly created cache entry only.

References #29418.
2024-02-12 16:39:53 -08:00
Yury Semikhatsky 7834beb932
chore: extract --project-grep option for matching with regex (#29445)
Reference https://github.com/microsoft/playwright/issues/15128
2024-02-10 11:19:00 -08:00
Pavel Feldman 586d14f02c
chore: add find-related-tests command (#29439) 2024-02-09 19:02:42 -08:00
Max Schmitt 61b88a851d
fix(merge): blobs before tags API (#29438)
Fixes https://github.com/microsoft/playwright/issues/29434
2024-02-09 20:47:38 +01:00
Yury Semikhatsky 7a86bf4af6
chore: delete store.ts (#29423) 2024-02-08 12:55:18 -08:00
Pavel Feldman 7f81c6e138
feat(ct): allow clearing cached build and test transformations (#29410) 2024-02-08 10:24:01 -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
Pavel Feldman 20699c36ba
chore: simplify types handling in toHaveScreenshot (#29374) 2024-02-05 19:07:30 -08:00
Dmitry Gozman fb29d90052
docs: remove overloads from test.* APIs (#29376) 2024-02-05 19:03:04 -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 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 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 b5e175e6e2
fix: tolerate wrongly-typed annotations (#29162)
Fixes https://github.com/microsoft/playwright/issues/29149
2024-01-25 11:35:17 -08:00
Pavel Feldman f7fb1e4d4e
chore(ct): use sticky test server if available (#29136) 2024-01-25 08:36:13 -08:00
Pavel Feldman cec2ff1772
chore: split cli processing into cli endpoint and program (#29131) 2024-01-23 15:22:09 -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
Max Schmitt db00aa7305
fix: remove unused TestInfo.stdout/stderr (#29076)
https://github.com/microsoft/playwright/issues/29062
2024-01-22 19:22:31 +01:00
Yury Semikhatsky d7958ba4ad
chore: quote path only if contains whitespaces (#29079)
Otherwise we always quote as `trace.zip` matches \W.

This is a follow-up to 674988c633
Reference https://github.com/microsoft/playwright/issues/29039
2024-01-19 16:52:39 -08:00
Yury Semikhatsky 674988c633
chore: add quotes to the path only when necessary (#29057)
This is a follow-up to c76f5294ce
Reference https://github.com/microsoft/playwright/issues/29039
2024-01-19 10:27:15 -08:00
Pavel Feldman 4010940315
chore: move off babel proposals to plugins (#29053) 2024-01-18 17:50:52 -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
Max Schmitt 4a45724633
fix: open 0.0.0.0 as localhost (#29054)
Fixes https://github.com/microsoft/playwright/issues/29047
2024-01-18 22:21:49 +01:00
Pavel Feldman 03815b9eb1
chore: migrate to Node 18 lockFileVersion 3 (#29051) 2024-01-18 11:33:23 -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 775ef30e43
fix(test runner): make TestCase.id not depend on the path separator (#29010)
Fixes #28991.
2024-01-16 13:32:47 -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
Max Schmitt f2ebc53f18
chore: mark version 1.42.0-next (#28973) 2024-01-13 00:20:27 +01:00
Max Schmitt 7670fd21e2
fix(esm): >= Node.js 21 globalPreload -> initialize (#28526)
https://github.com/microsoft/playwright/issues/28524
https://github.com/microsoft/playwright/issues/28732


https://nodejs.org/en/blog/announcements/v21-release-announce#module-customization-hook-globalpreload-removed-use-register-and-initialize-instead
2024-01-12 09:51:45 -08:00
Dmitry Gozman 90665ef056
docs: update auto-waiting doc (#28960)
- Replace action names with links to `Locator.click`.
- Remove "Attached" check in favor of "locator resolves to a single
element".
- Replace getter methods in assertion section with auto-retriying
assertions.
- Add missing actions.

---

<img width="837" alt="Screenshot 2024-01-11 at 1 02 34 PM"
src="https://github.com/microsoft/playwright/assets/9881434/1946678d-6a7e-45cf-a299-2f18cb3fb5a5">
2024-01-12 09:33:42 -08:00
Pavel Feldman 38822d1014
chore: remove manual __esModule override (#28935) 2024-01-10 16:28:08 -08:00
geke-scottlogic 6bd61cd8c6
docs: Improve clarity on toHaveText and toContainText assertions (#28623)
This closes https://github.com/microsoft/playwright/issues/28058.
2024-01-05 09:20:50 -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 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
Max Schmitt 256b287649
docs: note that custom args are on your own risk (#28656)
https://github.com/microsoft/playwright/issues/28537
2023-12-14 14:37:31 -08:00
Pavel Feldman d242ff67ef
chore: follow up to the stylePath review (#28636) 2023-12-14 08:19:24 -08:00
Yury Semikhatsky e31e5b1b7c
fix: use blob fileName as is without adding shard suffix (#28634)
Fixes https://github.com/microsoft/playwright/issues/27284
2023-12-13 18:47:13 -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
Dmitry Gozman 10dda30c7f
fix(reporters): carefully handle empty lines (#28591)
In some circumstances, like "No tests found" error, reporters produce a
lot of unnecessary empty lines:

```
$ npx playwright test
Error: No tests found




$ <next command>
```

Also, `line` reporter removes the `npx playwright test` command entirely
when `onError` happens before `onBegin`.
2023-12-11 21:18:48 -08:00
Dmitry Gozman ac3600ec96
feat: explain that argument is a regex (#28590)
- in docs;
- in the error message.

Terminal output:

```
$ npx playwright test foobar
Error: No tests found.
Make sure that arguments are regular expressions matching test files.
You may need to escape symbols like "$" or "*" and quote the arguments.
```

References #28551.
2023-12-11 17:35:39 -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 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
Yury Semikhatsky 2e762fd3d2
fix: parse report.jsonl without creating large string (#28366)
Reference https://github.com/microsoft/playwright/issues/28362
2023-11-28 08:47:44 -08:00
Yury Semikhatsky cea28b2df9
docs: clarify beforeAll execution on exception (#28361)
Reference https://github.com/microsoft/playwright/issues/28285
2023-11-27 16:37:30 -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
Yury Semikhatsky 34c8516d09
fix: correctly print number of interrupted tests in markdown (#28228) 2023-11-17 16:53:36 -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
Dmitry Gozman 5488c03d7f
chore: make asLocator() always safe (#28207) 2023-11-16 16:31:34 -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 8150b27413
chore: mark version 1.41.0-next (#28180) 2023-11-15 20:05:36 -08:00
Pavel Feldman 25b9c4eb4a
chore: do not lose error name for js errors (#28177) 2023-11-15 18:27:32 -08:00
Daniel 1c8ceb0a02
fix(html-reporter): Include specified host and port in the logged instructions to launch the HTML report (#28144)
Signed-off-by: Daniel <3473356+D4N14L@users.noreply.github.com>
2023-11-15 21:25:03 +01:00
Yury Semikhatsky ec2c7024b6
docs: fix ignoreCase description (#28121) 2023-11-14 10:18:04 -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 35aeace476
docs(assertions): note on whitespace normalization (#28110)
Fixes https://github.com/microsoft/playwright-java/issues/1419
2023-11-13 12:28:50 -08:00
Pavel Feldman 1b3349d091
chore: use codemirror in the on-hover locator editor (#28090) 2023-11-10 22:00:28 -08:00
Pavel Feldman cb14de7a5b
chore: do not use ansi outsite of TTY (#27979)
Fixes https://github.com/microsoft/playwright/issues/27891
2023-11-07 14:09:40 -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 a55fe8fd1f
chore: reset preserveOutput in ui mode (#27944)
Fixes https://github.com/microsoft/playwright/issues/27892
2023-11-02 20:50:23 -07:00
Ben Scott c59483c5fb
fix(tsconfig): handle tsconfig paths without a baseUrl (#27846) 2023-11-02 11:27:49 -07:00
Pavel Feldman 778047facc
chore: stream trace viewer logs (#27807) 2023-10-26 11:15:43 -07:00