Just like console.log
statements pollutes the browser's output, debug statements also pollutes the tests if one of your team mates forgot to remove it. debug
statements should be used when you actually want to debug your tests but should not be pushed to the codebase.
This rule aims to disallow the use of debug
in your tests.
Examples of incorrect code for this rule:
const { debug } = render(<Hello />);
debug();
const utils = render(<Hello />);
utils.debug();
import { screen } from '@testing-library/dom';
screen.debug();
const { screen } = require('@testing-library/react');
screen.debug();
If you use custom render functions then you can set a config option in your .eslintrc
to look for these.
"testing-library/no-debug": ["error", {"renderFunctions":["renderWithRedux", "renderWithRouter"]}],