This CL relands https://crrev.com/c/3461563. The main difference is that while we enable the pool implementation, we configure the pool size to be 0 unconditionally. This way, we get the benefit of spinning up fresh DevTools and inspected tabs while preserving the old behavior of doing the setup of these tabs right before a test executes and not in the background. Original CL description: > [e2e] Use pre-allocated DevTools and target tabs > > This CL changes the conductor to use new DevTools frontend and target > tabs for each individual test. A pool prepares a set of frontend/target > tab pairs in the background so the conductor doesn't need to waste time > resetting tabs in between tests. > > For debugging e2e tests we disable the pool and use on-demand tab > creation instead. It would be annoying to deal with ~12 open tabs > and trying to find the right ones in a debugging session. > > This CL also increases the general e2e test timeout from 5 to 10 > seconds. This is because of the more volatile nature of e2e tests > now. In some edge cases a tab for the currently running test might > not get enough CPU time to run in time. This can happen when a > serious of short running tests deplete the pool and multiple > Devtools frontend instances have to be prepared in the background. > > R=jacktfranklin@chromium.org > > Bug: 1297458 > Change-Id: I6b6c4a15e5d83f7e2bdc6082972993df179a5d87 > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3461563 > Reviewed-by: Jack Franklin <jacktfranklin@chromium.org> > Reviewed-by: Philip Pfaffe <pfaffe@chromium.org> > Commit-Queue: Simon Zünd <szuend@chromium.org> Bug: 1297458 Change-Id: Iac0294116f1a9e762a3847bcb0738955bba957b2 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3641403 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Chrome DevTools frontend
The client-side of the Chrome DevTools, including all JS & CSS to run the DevTools webapp.
Source code
The frontend is available on chromium.googlesource.com.
Design guidelines
Please be aware that DevTools follows additional development guidelines.
Issue triage
The issue triage guidelines can be found in docs/triage_guidelines.md.
Workflows
Instructions to set up, use, and maintain a DevTools frontend checkout can be found in docs/workflows.md.
Additional references
- DevTools documentation: devtools.chrome.com
- Debugging protocol docs and Chrome Debugging Protocol Viewer
- awesome-chrome-devtools: recommended tools and resources
- Contributing to DevTools: bit.ly/devtools-contribution-guide
- Contributing To Chrome DevTools Protocol: docs.google.com
- DevTools Design Review Guidelines: design_guidelines.md
Source mirrors
DevTools frontend repository is mirrored on GitHub.
DevTools frontend is also available on NPM as the chrome-devtools-frontend package. It's not currently available via CJS or ES modules, so consuming this package in other tools may require some effort.
The version number of the npm package (e.g. 1.0.373466) refers to the Chromium commit position of latest frontend git commit. It's incremented with every Chromium commit, however the package is updated roughly daily.
Getting in touch
-
All DevTools commits: View the log or follow @DevToolsCommits on Twitter
-
All open DevTools tickets on crbug.com
-
File a new DevTools ticket: new.crbug.com
-
Code reviews mailing list: devtools-reviews@chromium.org
-
@ChromeDevTools on Twitter
-
Chrome DevTools mailing list: groups.google.com/forum/google-chrome-developer-tools