gecko-dev/devtools/docs/tests
2021-06-09 08:53:34 +00:00
..
debugging-intermittents.md
mochitest-chrome.md
mochitest-devtools.md
node-tests.md Bug 1673419 - [devtools] Support performance-new typescript checks in devtools node try runner r=gregtatum,nchevobbe 2020-10-30 17:15:55 +00:00
perfherder-compare-link.png
perfherder-compare.png
perfherder-create-gecko-profile.png
perfherder-damp.png
perfherder-filter-subtests.png
perfherder-subtests.png
performance-tests.md Bug 1588458 - Replace dxr links by searchfox in the md doc r=firefox-source-docs-reviewers,championshuttler DONTBUILD 2020-10-08 08:11:59 +00:00
README.md
regression-graph.png
regression-popup.png
writing-perf-tests-example.md
writing-perf-tests-tips.md
writing-perf-tests.md Bug 1689954 - [devtools] Use sphinx directives instead of hints in documentation. . DONTBUILD 2021-02-02 13:27:43 +00:00
writing-tests.md Bug 1715049 - Convert devtools/docs/tests/writing-tests.md to async/await r=championshuttler,nchevobbe 2021-06-09 08:53:34 +00:00
xpcshell.md

Automated tests

When working on a patch for DevTools, there's almost never a reason not to add a new test. If you are fixing a bug, you probably should write a new test to prevent this bug from occurring again. If you're implementing a new feature, you should write new tests to cover the aspects of this new feature.

Ask yourself:

  • Are there enough tests for my patch?
  • Are they the right types of tests?

We use three suites of tests:

  • xpcshell: Unit-test style of tests. No browser window, only a JavaScript shell. Mostly testing APIs directly.
  • Chrome mochitests: Unit-test style of tests, but with a browser window. Mostly testing APIs that interact with the DOM.
  • DevTools mochitests: Integration style of tests. Fires up a whole browser window with every test and you can test clicking on buttons, etc.

More information about the different types of tests can be found on the automated testing page at MDN.

To run all DevTools tests, regardless of suite type:

./mach test devtools/*

Have a look at the child pages for more specific commands for running only a single suite or single test in a suite.