Commit graph

40 commits

Author SHA1 Message Date
Yury Semikhatsky b129abab04
cherry-pick(#31768): fix(trace viewer): library-only trace should not merge actions (#31780)
This PR cherry-picks two trace viewer fixes: 
cherry-pick(#31768): fix(trace viewer): library-only trace should not
merge actions
cherry-pick(#31564): fix(trace): do not corrupt test runner actions when
no library trace is present

Reference: https://github.com/microsoft/playwright-java/issues/1617
2024-07-22 10:00:20 -07:00
Yury Semikhatsky 2734a05342
feat(trace-viewer): show nework request source id (#30810)
<img width="1392" alt="image"
src="https://github.com/microsoft/playwright/assets/9798949/dcfd4d71-4a41-48ac-9f24-2996200f966a">

Fixes https://github.com/microsoft/playwright/issues/28903
2024-05-15 16:29:26 -07:00
Yury Semikhatsky fb319e6d3d
fix: match client step and server action by explicit stepId (#30641)
Matching bu `apiName@wallTime` fails when two actions start at the same
time, e.g. two parallel api requests. Moreover, it results in trace
actions that have parent set to themselves, which in turn causes
infinite loop in the trace viewer. To avoid this problems we write
stepId explicitly to the library trace and use those step ids to find
corresponding test runner steps.

The stepId is passed via zone in case of expect, because the protocol
step is quite deep in the call chain after or explicitly in case of API
call steps created by the test runner instrumentation.
2024-05-14 12:10:46 -07:00
Yury Semikhatsky 00bf7ea815
chore(trace-viewer): more clear classification of trace contexts (#30737) 2024-05-09 17:28:39 -07:00
Yury Semikhatsky a50cd30519
chore: use monotonic time for sorting (#30735)
* Use only monotonicTime for sorting, do not use wallTime for that
* Since test runner and the library can be running on different
machines, those machines may have clocks which are not synchronized. To
avoid problems in such cases we compute delta between test runner and
and library contexts based on a start time of action that exists in both
contexts.
2024-05-09 15:31:23 -07:00
Yury Semikhatsky 1a22e06062
chore: only patch callIds when there are multiple trace files (#30721) 2024-05-09 09:33:16 -07:00
Yury Semikhatsky 7a0c7730e7
fix(trace-viewer): make call ids unique across trace files (#30720) 2024-05-08 17:33:31 -07:00
Dmitry Gozman 2ce421b27a
fix(trace viewer): synchronize monotonic times between context entries (#29908)
When displaying remote context trace and local test runner trace
together, we should not compare monotonic time between the two.

This change reuses existing logic for merging actions timing to also
update context boundaries and events by the same time delta.

Fixes #29767.
2024-03-12 16:32:58 -07:00
Pavel Feldman fc5f34369a
chore: only highlight uncaught errors in source (#28772) 2023-12-22 14:19:53 -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
Pavel Feldman 778047facc
chore: stream trace viewer logs (#27807) 2023-10-26 11:15:43 -07:00
Dmitry Gozman 2af7d672ef
fix(tracing): bump trace version to V5, migrate V4 traces to consoleMessage.args (#27162)
This moves the fix in #27095 from `modernize` to `appendEvent`. The
reason is that `trace V4` is used both for older traces that do not have
`consoleMessage.args` and the new ones with `args`. Since we do not call
`modernize` for traces of the same version, the original fix does not
help in this case.

Fixes #27144.
2023-09-19 16:21:09 -07:00
Max Schmitt 6bbc09c96c
chore: show channel name in trace viewer metadata (#26987)
Fixes https://github.com/microsoft/playwright/issues/26986
2023-09-11 23:06:56 +02:00
Pavel Feldman 1c5f53f216
chore: show innermost error in ui mode (#26840) 2023-09-01 13:48:15 -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
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 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
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
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 0e1aeaaecf
chore: do not show stale source in the trace (#23163) 2023-05-19 15:18:18 -07:00
Pavel Feldman 4c4085e105
chore: partially hide built-in fixture steps (#23005) 2023-05-12 19:15:31 -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 d34c4e99f5
chore: add step attachments into the expect trace event (#22543) 2023-04-25 17:38:12 -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 0bf406c8aa
chore: sort tracing actions by wall time (#21839) 2023-03-21 10:03:49 -07:00
Pavel Feldman 001df3a495
chore(ui): follow up to watch, fix win (#21792) 2023-03-19 22:52:48 -07:00
Pavel Feldman 22e11a12ab
chore: show snapshots for sync assertions (#21775) 2023-03-17 20:20:35 -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 de3a5e2a91
chore(trace): include expect steps in a trace (#21199) 2023-02-28 13:26:23 -08:00
Pavel Feldman 22d82b6e1b
chore: flatten metadata in trace events (#21214) 2023-02-27 15:29:20 -08:00
Pavel Feldman d7a0b3bb4e
chore: implement pick locator in trace viewer (#20965)
Fixes https://github.com/microsoft/playwright/issues/7853
2023-02-17 11:19:53 -08:00
Pavel Feldman 1b541c9932
chore: render typed locators in the trace viewer (#18166) 2022-10-18 19:23:40 -07:00
Pavel Feldman df143031e7
chore: move protocol and trace types into the top-level packages (#17486) 2022-09-20 18:41:51 -07:00
Pavel Feldman 7bd72716f9
feat(har): introduce the slim mode (#15053) 2022-06-22 14:44:12 -07:00
Pavel Feldman 6b81e76c2b
chore: migrate trace-viewer and recorder to vite (#13076) 2022-03-25 14:12:00 -07:00
Renamed from packages/playwright-core/src/web/traceViewer/ui/modelUtil.ts (Browse further)