Commit graph

306 commits

Author SHA1 Message Date
Pavel Feldman 123ee9ddc1
chore: trace timeline ux (#26797) 2023-08-30 15:48:51 -07:00
Pavel Feldman fd31f5bc50
chore: fix har date types (#26783) 2023-08-30 12:40:46 -07:00
Pavel Feldman a34deffa43
chore: highlight actions and har entries in timeline (#26781) 2023-08-29 22:23:08 -07:00
Pavel Feldman c209d7e708
chore: more network panel polish (#26780) 2023-08-29 22:20:28 -07:00
Max Schmitt a9bc1a1707
fix(trace-viewer): SVG images were not loading (#26755)
Fixes https://github.com/microsoft/playwright/issues/26745

Drive-by: make Codemirror read-only.
2023-08-29 18:05:01 +02:00
Max Schmitt 39f8f2ed8d
fix(trace-viewer): use sdkLanguage for Pick Locator (#26737)
Fixes https://github.com/microsoft/playwright/issues/26736
2023-08-28 17:39:02 +02:00
Pavel Feldman ee86b9bc94
chore: network panel ui polish (#26722) 2023-08-25 19:20:36 -07:00
Pavel Feldman 0ecd561db2
chore: improve network panel rendering (#26708) 2023-08-25 12:10:28 -07:00
Pavel Feldman 197f79c933
chore: show action on hover even if there is no film (#26655) 2023-08-23 12:55:01 -07:00
Pavel Feldman 46e33cd384
feat: allow installing browsers from ui (#26628) 2023-08-23 12:26:11 -07:00
Pavel Feldman 91b784e15e
chore: update icon font (#26627) 2023-08-23 08:31:43 -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 fe7b956c3b
chore: allow toggling sidebar location (#26589) 2023-08-21 19:40:44 -07:00
Pavel Feldman c3c3c7f53c
chore: decorate console message sources (#26588) 2023-08-21 16:05:27 -07:00
Pavel Feldman 2b16860e06
chore: locator tab polish (#26568) 2023-08-21 10:59:49 -07:00
Pavel Feldman f83d81956d
chore: make console stream live in ui mode (#26562) 2023-08-21 10:59:37 -07:00
Max Schmitt 2f6148bcd1
chore: use SVG icons for web apps (#26564)
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-08-21 18:33:02 +02: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
Pavel Feldman 8f31191637
chore: pick locator tab (#26532) 2023-08-18 17:53:03 -07:00
Marcin Strzyz 6b2d93a890
chore: error on unused eslint disables (#26510) 2023-08-17 20:53:36 +02:00
Pavel Feldman 049f839b30
chore: use glass pane for dragging (#26513) 2023-08-17 09:36:59 -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
Pavel Feldman a705d68c8a
chore: filter actions, console and network based on the timeline window (#26509) 2023-08-16 16:30:17 -07:00
Dmitry Gozman 1b233a5ae2
fix(trace viewer): do not serve 304 responses (#24435)
These do not have any content, and we should server the original
response that was cached by the browser.

Fixes #24255.
2023-07-27 08:06:00 -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 49c1f9eb02
feat(ui): run deps in UI mode if dep projects are checked (#24245) 2023-07-15 15:11:31 -07:00
Pavel Feldman 5d799606c3
chore: resolve top-level vs dependency after cli filtering (#24216) 2023-07-13 17:54:08 -07:00
Pavel Feldman 33bab3652d
fix(ui): bump min sidebar size (#24193) 2023-07-13 15:14:49 -07:00
Dmitry Gozman aeba083da0
fix(snapshots): match resources by method (#24145)
Fixes #24144.

Previously, we only matched by url, which confuses GET and HEAD requests
where the latter is usually zero-sized.

Also make sure that resources are sorted by their monotonicTime, since
that's not always the case in the trace file, where they are sorted by
the "response body retrieved" time.
2023-07-10 20:04:48 -07:00
Pavel Feldman 63915dc07a
feat(trace): render Node console messages in trace (#24139) 2023-07-10 18:36:28 -07:00
Pavel Feldman 67ad2c2bf4
feat(ui): render all console / network messages in trace (#24115) 2023-07-10 12:56:56 -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
Pavel Feldman 6343ea2795
feat(trace): allow scrolling the filmstrip (#24015)
Fixes https://github.com/microsoft/playwright/issues/23963
2023-07-03 13:03:33 -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
Max Schmitt dcdf38f119
chore: keep UI Mode running when used with browser mode (#23876)
This will keep UI Mode running in browser mode. When launched in normal
persistent context mode, we know when the persistent context closes, so
we can run the project teardown code.

Fixes https://github.com/microsoft/playwright/issues/23801
2023-06-26 22:21:44 +02:00
Max Schmitt e1c220a37b
fix(trace-viewer): file path contains encoded characters (#23893)
This fixes:

```
npx playwright show-trace %20I%20Love%20Node.zip
```

Extracted from https://github.com/microsoft/playwright/pull/23414.
2023-06-26 18:13:40 +02:00
Max Schmitt 605dfde2be
chore: rename popout.html to snapshot.html in trace viewer (#23842)
Turns out its caused by a uBlockOrigin EasyList entry which thinks we
are an ad since we call ourselves "popout.html". See this entry:


e7883cfe74/easylist/easylist_general_block_popup.txt (L42)

Fixes https://github.com/microsoft/playwright/issues/23799
2023-06-21 21:10:50 +02:00
Andrey Lushnikov 1736479e41
fix: fix locator picker in Trace (#23820)
- make sure links are not clickable with enabled locator picker
- make sure locator picker state is preserved when switching actions
2023-06-20 11:39:21 -07:00
Dmitry Gozman 132a5a4bf5
fix(trace viewer): prefer latest resource with the same url (#23763)
When rendering snapshot, disregard earlier resources with the same url,
because it's most likely that the latest one was used for rendering.

An example would be reloading the page before the stylesheet has
finished loading. In this case, the stylesheet will be requested twice,
and the second copy that was not aborted should be used for the
snapshot.

Fixes #23709.
2023-06-17 06:58:16 -07:00
Max Schmitt 4d02aa1e52
chore: render locator in trace viewer timeline label (#23754) 2023-06-16 17:56:11 +02:00
Andrey Lushnikov dc81cfaf81
Revert "fix: scroll timeline with multiple pages in context (#23493)" (#23711)
This reverts commit a4d361379f.

Reason for revert: this breaks screencast preview (the image
that is shown when you hover over the screencast).
2023-06-14 11:41:42 -07:00
Andrey Lushnikov 3c0fab489b
chore: miscellaneous trace viewer fixes (#23695)
- properly annotate continued requests
- nest `attach` steps inside the related `expect` step
- fix primary-id-to-non-primary-id mapping
- make sure images in trace are not draggable

Fixes #23693

---------

Signed-off-by: Andrey Lushnikov <aslushnikov@gmail.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-06-14 09:37:19 -07:00
Yury Semikhatsky abdfe264fa
chore: run html reporter tests with merged report (#23626) 2023-06-09 15:41:15 -07:00
Tyler Gould a4d361379f
fix: scroll timeline with multiple pages in context (#23493)
Fixes #23490 

Before:
<img width="500" alt="image"
src="https://github.com/microsoft/playwright/assets/4130722/faa1f7c3-9aeb-4e0c-aca3-0d9c24609628">

After:
<img width="500" alt="image"
src="https://github.com/microsoft/playwright/assets/4130722/6dfbc204-8ff2-49cb-a374-734750c6a385">

---------

Signed-off-by: Tyler Gould <4130722+scitech@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2023-06-09 09:07:14 -07:00
Pavel Feldman 83cf6cc1e8
chore: do not show select item when Show trace (#23583) 2023-06-07 16:11:57 -07:00
Pavel Feldman 0b30f2017c
chore: make trace server work over http (#23561) 2023-06-06 18:36:05 -07:00
Andrey Lushnikov 2e327c9d0c
fix: miscellaneous improvements for tracing UI (#23558)
- feat(tracing): mark API requests with "API" label
- feat(tracing): do not attribute any resources to `route.` API calls;
  otherwise, network traffic might get inside the `route.` actions.
- fix(tracing): map actionIds from primary contexts to actionIds from
  non-primary contexts
- fix(tracing): show leading `/` in URL path in network panel

This is a result of a pair-programming session with @pavelfeldman
2023-06-06 17:38:44 -07:00
Pavel Feldman 7579572688
chore: unflake the network status test (#23551) 2023-06-06 16:55:53 -07:00
Pavel Feldman 037da65d83
chore: fix ui mode tests on windows (#23553) 2023-06-06 14:24:42 -07:00
Max Schmitt ce2f902c1f
chore: fix UI Mode on Codespaces (#23549) 2023-06-06 20:09:39 +02:00
Pavel Feldman 699ac3a0f2
chore: allow opening ui mode over http (#23536) 2023-06-06 08:31:52 -07:00
Max Schmitt 0e12831a02
chore: hide 'Open in VSCode' for folders in UI Mode (#23499) 2023-06-05 22:09:45 +02:00
KotlinIsland afa531ef60
feat: Allow multiple trace uploads in the trace viewer (#23517) 2023-06-05 12:34:54 -07:00
Pavel Feldman 5a14619bab
chore: render route markers in the trace network panel (#23476)
Fixes https://github.com/microsoft/playwright/issues/23040


![net](https://github.com/microsoft/playwright/assets/883973/5191163e-63f9-4999-9197-d10dcd09a665)
2023-06-02 13:00:27 -07:00
Pavel Feldman d1666d2dde
chore: include test-end-screenshot in a trace (#23457)
Fixes https://github.com/microsoft/playwright/issues/23222
2023-06-01 20:29:32 -07:00
Pavel Feldman b99c214b29
chore(trace): render drawer as a sidebar in the tv mode (#23451)
Fixes: https://github.com/microsoft/playwright/issues/23227
2023-06-01 15:49:48 -07:00
Pavel Feldman 658b1dfea3
chore: trace viewer server for vscode (#23383) 2023-05-30 18:31:15 -07:00
Pavel Feldman 1e95b6d906
chore: allow sending trace URLs over stdin (#23288) 2023-05-25 15:38:47 -07:00
Dmitry Gozman 848f1dff3f
feat(trace): instantiate consoleAPI in popout with correct testIdAttribute (#23238) 2023-05-23 12:17:26 -07:00
Pavel Feldman b814e8a5f1
chore: bring back per test artifacts (#23153) 2023-05-23 09:36:35 -07:00
Pavel Feldman 0e1aeaaecf
chore: do not show stale source in the trace (#23163) 2023-05-19 15:18:18 -07:00
Pavel Feldman 2697e93663
chore: do not annotate actions after failed ones as timed out (#23148) 2023-05-18 15:52:44 -07:00
Pavel Feldman 4c4085e105
chore: partially hide built-in fixture steps (#23005) 2023-05-12 19:15:31 -07:00
Pavel Feldman 5e0574dc44
chore: list attachments in the trace (#22919)
Fixes https://github.com/microsoft/playwright/issues/22736
2023-05-09 17:53:01 -07:00
Pavel Feldman 0bf297f523
fix(trace): merge step hierarchies (#22916) 2023-05-09 14:50:28 -07:00
Pavel Feldman b10cc03314
chore: render parse errors in the UI mode (#22888)
Fixes: https://github.com/microsoft/playwright/issues/22863
2023-05-08 18:51:27 -07:00
Pavel Feldman 9771b1ee74
chore: show steps for fixtures (#22860)
Fixes https://github.com/microsoft/playwright/issues/22565
2023-05-06 10:25:32 -07:00
Pavel Feldman efad19b332
chore: render test steps in the trace (#22837) 2023-05-05 15:12:18 -07:00
Pavel Feldman 9c29f24c65
chore: poll test result along with the live trace (#22714)
Fixes: https://github.com/microsoft/playwright/issues/22656
2023-04-28 16:56:28 -07:00
Pavel Feldman d34c4e99f5
chore: add step attachments into the expect trace event (#22543) 2023-04-25 17:38:12 -07:00
Pavel Feldman 0c70f6900e
chore: fix ui mode w/ multiple contexts (#22514)
Fixes: https://github.com/microsoft/playwright/issues/21895
2023-04-20 08:19:00 -07:00
Pavel Feldman 8f14517de2
chore: allow collapsing all (#22512)
Fixes https://github.com/microsoft/playwright/issues/21915
2023-04-19 18:16:18 -07:00
Pavel Feldman a45f04568b
chore: rename watchmode to uimode tsx (#22511) 2023-04-19 16:51:42 -07:00
Pavel Feldman 320b9d5dbb
chore: speculative attempt to unflake ui mode tests (#22476) 2023-04-19 07:29:28 -07:00
Yury Semikhatsky fc23d35697
chore: clear previous test results optionally (#22224) 2023-04-06 08:33:17 -07:00
Yury Semikhatsky b5195122d9
chore: return promise from tele receiver dispatch (#22218) 2023-04-05 14:23:06 -07:00
Pavel Feldman 0d31d69d65
chore(trace): improve loading progress bar (#22201)
Fixes: https://github.com/microsoft/playwright/issues/22118
2023-04-05 13:03:25 -07:00
Dmitry Gozman 82e52004c9
fix(ui mode): preserve manually selected action in live trace (#22131) 2023-03-31 18:34:51 -07:00
Pavel Feldman a4f67c64e3
chore: allow ts decorators (#22080) 2023-03-29 20:43:08 -07:00
Pavel Feldman add948cdd0
chore: allow sibling describes with the same name (#21967)
Fixes https://github.com/microsoft/playwright/issues/21953
2023-03-24 17:09:11 -07:00
Pavel Feldman 31e70c17be
chore: filter skipped tests (#21938)
Fixes https://github.com/microsoft/playwright/issues/21918
2023-03-23 13:29:52 -07:00
Pavel Feldman 6b83631f24
chore: fix trace viewer backwards compat (#21935) 2023-03-23 12:49:53 -07:00
Pavel Feldman f5bd236c7b
chore: install global watch late (#21927) 2023-03-23 11:30:28 -07:00
Andrey Lushnikov 3477c89f20
fix(trace-viewer): survive broken selectors (#21866)
Fixes https://github.com/microsoft/playwright/issues/21832
2023-03-22 18:52:04 -07:00
Yury Semikhatsky a2a2b78cc8
chore: relative paths in telereporter (#21887) 2023-03-22 13:59:57 -07:00
Dmitry Gozman a01fd04d63
chore: remove hierarchy of SnapshotStorage (#21853) 2023-03-22 09:32:21 -07:00
Pavel Feldman d9a9bb5a8c
chore: pack codemirror on resize (#21856) 2023-03-21 18:20:48 -07:00
Pavel Feldman 1cf53da82a
chore: lower the input name (#21850) 2023-03-21 13:48:59 -07:00
Pavel Feldman 1bbe2b4b6a
chore: update test locations when merging (#21844) 2023-03-21 12:13:20 -07:00
Pavel Feldman 7ce2b36489
chore(ui): show load errors (#21843) 2023-03-21 12:03:26 -07:00
Pavel Feldman 0bf406c8aa
chore: sort tracing actions by wall time (#21839) 2023-03-21 10:03:49 -07:00
Dmitry Gozman bea6fa15b2
feat(snapshots): use double-buffer to avoid white flash on hover (#21828) 2023-03-21 07:40:54 -07:00
Pavel Feldman 13acbbd0a7
chore(ui): use test backlog when chaining (#21830) 2023-03-20 21:25:55 -07:00
Pavel Feldman 48eea13259
chore: update margins to align (#21826) 2023-03-20 20:45:32 -07:00
Pavel Feldman a33cf10696
chore(ui): decorate pending, add time spent (#21821) 2023-03-20 17:12:02 -07:00
Pavel Feldman 543c812d2f
chore(ui): queue watch runs (#21809) 2023-03-20 13:45:35 -07:00
Pavel Feldman 001df3a495
chore(ui): follow up to watch, fix win (#21792) 2023-03-19 22:52:48 -07:00
Pavel Feldman 754e6edb95
chore: show folders in the tree (#21789) 2023-03-19 18:51:09 -07:00
Pavel Feldman 294baaeb44
chore: allow watching all tests (#21787) 2023-03-19 14:50:09 -07:00
Pavel Feldman 8a65cf9aac
chore(ui): ui polish / nits (#21781) 2023-03-19 12:04:19 -07:00
Pavel Feldman 0728d0f7fb
chore(ui): show test source before running (#21776) 2023-03-17 21:34:40 -07:00
Pavel Feldman 22e11a12ab
chore: show snapshots for sync assertions (#21775) 2023-03-17 20:20:35 -07:00
Pavel Feldman 6efb383433
chore: fix and test ui mode stop (#21769) 2023-03-17 14:10:25 -07:00
Pavel Feldman b0bda92f9e
chore(ui): store selected projects in settings (#21737) 2023-03-17 09:41:23 -07:00
Pavel Feldman e066ca0713
chore: use test project output dir when showing live trace (#21735) 2023-03-16 20:09:09 -07:00
Pavel Feldman 1ffe01b027
chore: render errors from all actions inline the source (#21702) 2023-03-16 10:01:17 -07:00
Pavel Feldman c45d8749b0
chore: split trace events into phases (#21696) 2023-03-15 22:33:40 -07:00
Pavel Feldman 99d8f6e7de
chore(ui): show live trace (#21677) 2023-03-15 11:17:03 -07:00
Pavel Feldman 27048adebe
chore: introduce testInfo.testId (#21670) 2023-03-14 15:58:55 -07:00
Pavel Feldman 7666894d77
chore(ui): minor trace viewer improvements (#21672) 2023-03-14 15:24:48 -07:00
Pavel ec10308c1b chore: follow up to ui-mode style change, fix image style 2023-03-13 22:22:52 -07:00
Pavel Feldman f5fa18a279
chore: reimplement filters (#21647) 2023-03-13 22:19:31 -07:00
Pavel Feldman 1d870ac407
chore(ui): start adding ui mode tests (2) (#21608) 2023-03-13 12:14:51 -07:00
Pavel Feldman a12e909a40
chore(ui): start adding ui mode tests (#21601) 2023-03-12 15:18:47 -07:00
Pavel Feldman 493171cb6b
chore: select files to watch explicitly (#21599) 2023-03-12 10:50:21 -07:00
Pavel Feldman 08a5922c4d
chore: select first failure (#21593) 2023-03-12 10:42:02 -07:00
Pavel Feldman b85d670491
chore(ui): show output on demand (#21592) 2023-03-11 11:43:33 -08:00
Pavel Feldman 428ea66578
chore: hide timeline bars and stack from ui mode (#21590) 2023-03-10 22:52:31 -08:00
Pavel Feldman 0b9c037f36
chore(ui): do not add sources into the zip file (#21588) 2023-03-10 17:01:30 -08:00
Pavel Feldman 34efbea4c5
chore(ui): throttle tree updates (#21578) 2023-03-10 17:01:19 -08:00
Pavel Feldman e45a496850
chore(tv): render error in-line (#21586) 2023-03-10 16:22:19 -08:00
Pavel Feldman 1073e42686
chore: allow running failing (#21569) 2023-03-10 12:41:00 -08:00
Pavel Feldman c3b4820f1e
chore: animate the running progress (#21554)
https://github.com/microsoft/playwright/issues/21541
2023-03-09 21:45:57 -08:00
Pavel Feldman 0106a54e6e
chore: ui mode fixes (#21546)
For https://github.com/microsoft/playwright/issues/21541
2023-03-09 20:02:42 -08:00
Pavel Feldman e737ff83b4
chore: migrate to useRef take 2 (#21552) 2023-03-09 19:34:05 -08:00
Pavel a619ea4d68 Revert "chore: replace createRef with useRef in most of the places (#21536)"
This reverts commit 908c0462d5.
2023-03-09 16:46:31 -08:00
Pavel Feldman 908c0462d5
chore: replace createRef with useRef in most of the places (#21536) 2023-03-09 13:31:21 -08:00
Pavel Feldman 47a71731f4
chore: add explicit command for gui runner (#21509) 2023-03-09 08:04:02 -08:00
Pavel Feldman 5ef2edb9f7
chore: support suites in the tree (#21508) 2023-03-08 19:50:32 -08:00
Pavel Feldman 72c41db668
chore: propagate status along the tree (#21507) 2023-03-08 18:24:45 -08:00
Pavel Feldman adc895d31f
chore: introduce tree control (#21505) 2023-03-08 17:33:27 -08:00
Pavel Feldman a2490a8fc8
chore(ui): maintain test order when updating (#21478) 2023-03-07 20:34:57 -08:00
Pavel Feldman f5894ed089
chore: open location in vscode (#21472) 2023-03-07 17:20:41 -08:00
Pavel Feldman de0b66c888
chore: allow opt out from watch (#21471) 2023-03-07 15:07:52 -08:00
Pavel Feldman e9f94f0346
chore: add ui mode terminal (#21470) 2023-03-07 14:24:50 -08:00
Pavel Feldman 9e7abb2a76
chore: rearrange settings (#21467) 2023-03-07 12:43:16 -08:00
Pavel Feldman 041d0ab0d6
chore: create trace model off steps for progress (#21448) 2023-03-06 22:35:57 -08:00
Pavel Feldman 9e477a183e
chore: various trace viewer ui fixes (#21447) 2023-03-06 21:37:39 -08:00
Pavel Feldman 65117702e7
chore: consistent xterm naming (#21446) 2023-03-06 20:39:52 -08:00
Pavel Feldman cffb6ac269
chore: move sever/isomorphic to utils/ to use it in client (#21445) 2023-03-06 18:49:14 -08:00
Pavel Feldman 04b35089be
chore: extract shared trace viewer components (#21433) 2023-03-06 12:25:00 -08:00
Pavel Feldman b6ff3bad98
chore: split code mirror and xterm modules (#21415) 2023-03-06 10:40:45 -08:00
Pavel Feldman bae9173208
chore: split ui mode toolbar into lines, show progress (#21403) 2023-03-05 13:46:21 -08:00
Pavel Feldman d8d410db6e
chore: implement project filter (#21402) 2023-03-04 19:39:55 -08:00
Pavel Feldman ec056a6312
chore: merge projects in the tree (#21401) 2023-03-04 16:28:30 -08:00
Pavel Feldman f0cd123a45
chore(ui): make ui-side drive things (#21398) 2023-03-04 15:05:41 -08:00
Pavel Feldman fc91e6086b
chore: minor trace viewer ui fixes (#21368) 2023-03-03 09:17:40 -08:00