Have mochitest run test slowly or step by step
Categories
(DevTools :: General, enhancement)
Tracking
(firefox125 fixed)
Tracking | Status | |
---|---|---|
firefox125 | --- | fixed |
People
(Reporter: ochameau, Assigned: ochameau)
References
Details
Attachments
(7 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Opening a devtools bug as that's easily based on devtools APIs, but sounds rather like a mochitest feature.
Assignee | ||
Comment 1•3 years ago
|
||
This will pause on each frame of the mochitest file.
This is a proto to demonstrate how to leverage the Debugger API
to do a step over which pauses while running mochitests.
Assignee | ||
Comment 2•3 years ago
|
||
(It replaces the toggle toolbox key shortcut entirely)
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 3•9 months ago
|
||
This feature is only exposed to internal usages of tracer.jsm, by passing traceStep boolean option:
startTracing({ global, traceSteps: true });
This will automatically log to stdout all traces, including each frame step within a function execution.
Without this flag, the tracer would only trace function calls and nothing more.
We would not know which line is being executed within the function execution.
Updated•9 months ago
|
Assignee | ||
Comment 4•9 months ago
|
||
This allow pausing the currently traced event loop for a given amount of time in ms.
This will pause accordingly to the tracer configuration.
If the tracer only track function calls, it will only pause function calls and not the code running within them.
If the tracer has traceSteps flag ON, it will also pause on each frame running within all functions.
This feature is to be considered very special if not dangerous.
The synchronous pause will pause the traced code by allowing all other event loops in the same thread to run.
This may cause behavior that are irreproducible without this very special feature!
This feature is only exposed to internal usages of tracer.jsm, by passing pauseOnStep number option:
startTracing({ global, pauseOnStep: 250 });
Each traced frame will be paused during 250ms.
Assignee | ||
Comment 5•9 months ago
|
||
This feature is only exposed to internal usages of tracer.jsm, by passing filterFrameSourceUrl string option:
startTracing({ global, filterFrameSourceUrl: "file.js" });
This will restrict the tracer to only log traces for the given file URL.
This is a loose URL check, so any source whose URL includes the passed string will be traced.
Assignee | ||
Comment 6•9 months ago
|
||
Assignee | ||
Comment 7•9 months ago
|
||
devtools/server/tracer/tracer.jsm should be used instead.
Comment 9•9 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/dfb5d61dae1b
https://hg.mozilla.org/mozilla-central/rev/eb31f3bf6511
https://hg.mozilla.org/mozilla-central/rev/4df9caeb2073
https://hg.mozilla.org/mozilla-central/rev/5e2e7bcd9986
https://hg.mozilla.org/mozilla-central/rev/1a5f7a3c39bb
Description
•