Add JS/CSS coverage collection for Chrome#2480
Merged
Merged
Conversation
Coverage is exposed two ways. --chrome.coverage runs it on every iteration for users who want the data and accept that detailed V8 coverage deoptimizes scripts and will skew their timing metrics. --enableProfileRun also turns coverage on for Chrome, alongside the existing trace, so users who want coverage without affecting their timings can lean on the same extra-iteration pattern they already use for tracing. When only the profile run produces coverage, the result is merged back into the main browsertime.json so consumers like sitespeed.io see the data in the same place they read every other metric. The per-iteration result includes a per-file breakdown (url, totalBytes, usedBytes, unusedBytes, unusedPercent), so the "which file should I tree-shake" question is answerable from the main JSON alone. Co-authored-by: Claude noreply@anthropic.com Change-Id: I28526039a799d0efa5f1f4da81d6dfa66d1ec8c3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Coverage is exposed two ways. --chrome.coverage runs it on every
iteration for users who want the data and accept that detailed V8
coverage deoptimizes scripts and will skew their timing metrics.
--enableProfileRun also turns coverage on for Chrome, alongside the
existing trace, so users who want coverage without affecting their
timings can lean on the same extra-iteration pattern they already use
for tracing. When only the profile run produces coverage, the result
is merged back into the main browsertime.json so consumers like
sitespeed.io see the data in the same place they read every other
metric. The per-iteration result includes a per-file breakdown
(url, totalBytes, usedBytes, unusedBytes, unusedPercent), so the
"which file should I tree-shake" question is answerable from the
main JSON alone.
Co-authored-by: Claude noreply@anthropic.com
Change-Id: I28526039a799d0efa5f1f4da81d6dfa66d1ec8c3