DevTools (Test Debugging & Visualization) Service
@wdio/devtools-service is a 3rd party package, for more information please see GitHub | npm
A powerful browser devtools extension for debugging, visualizing, and controlling test executions in real-time.
Works with WebdriverIO, Nightwatch.js, Selenium WebDriver (any test runner), and Python Selenium โ same backend, same UI, same capture infrastructure.
It runs in two modes: live โ an interactive dashboard that opens as your tests run โ and trace โ a portable trace.zip artifact for offline replay, CI, and AI-agent diffing.
Quick Startโ
Install the adapter for your framework, add it to your config, and run โ the DevTools dashboard opens automatically.
npm install @wdio/devtools-service --save-dev # WebdriverIO (Nightwatch / Selenium below)
// wdio.conf.js
export const config = {
services: ['devtools'] // live mode โ opens the dashboard on run
}
npx wdio run wdio.conf.js
Want a portable artifact instead of a live UI (CI / agent diffing)? Switch to trace mode โ see Configuration and Usage. Full setup for each framework: Installation ยท Nightwatch ยท Selenium.
Featuresโ
๐ฏ Interactive Test Executionโ
- Selective Test Rerun: Click play buttons on individual test cases, test suites, or Cucumber scenario examples to re-execute them instantly
- Smart Browser Reuse: Tests rerun in the same browser window without opening new tabs, improving performance and user experience
- Stop Test Execution: Terminate running tests with proper process cleanup using the stop button
- Test List Preservation: All tests remain visible in the sidebar during reruns, maintaining full context
๐ญ Multi-Framework Supportโ
- Mocha: Full support with grep-based filtering for test/suite execution
- Jasmine: Complete integration with grep-based filtering
- Cucumber: Scenario-level and example-specific execution with feature:line targeting
Dashboard and options by adapter:
| Feature | WebdriverIO | Selenium | Nightwatch | Python |
|---|---|---|---|---|
| One row per command in the Actions list | โ | โ | โ | โ |
| Waits show as one row with what they issued nested under it | โ | โ | โ ๏ธ no element-wait polls ยน | โ |
| Screenshot on every command row | โ | โ | โ | โ |
| Browser console logs | โ | โ | โ | โ |
| Source tab opens the test line that ran the command | โ | โ | โ | โ |
| Metadata tab (session, capabilities, device) | โ | โ | โ | โ |
| Performance timings on navigation rows | โ | โ | โ | โ |
| Failed command in the Errors tab, with the browser's message | โ | โ | โ | โ |
| Run, Rerun and Run all from the dashboard | โ ๏ธ no Cucumber step rerun ยฒ | โ ๏ธ no Cucumber step rerun ยฒ | โ ๏ธ no Cucumber step rerun ยฒ | โ |
| Preserve & Rerun (compare a failed run with its rerun) | โ | โ | โ |