As more assertions are made, there is a possible tendency for the test to be more likely to mix multiple objectives. To avoid this, this rule reports when the maximum number of assertions is exceeded.
This rule enforces a maximum number of expect()
calls.
The following patterns are considered warnings (with the default option of
{ "max": 5 }
):
test('should not pass', () => {
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
});
it('should not pass', () => {
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
});
The following patterns are not considered warnings (with the default option
of { "max": 5 }
):
test('shout pass');
test('shout pass', () => {});
test.skip('shout pass', () => {});
test('should pass', function () {
expect(true).toBeDefined();
});
test('should pass', () => {
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
expect(true).toBeDefined();
});
{
"jest/max-expects": [
"error",
{
"max": 5
}
]
}
Enforces a maximum number of expect()
.
This has a default value of 5
.