Test assertions using null comparison can be simplified

이 페이지는 아직 한국어로 제공되지 않으며 번역 작업 중입니다. 번역에 관한 질문이나 의견이 있으시면 언제든지 저희에게 연락해 주십시오.

Metadata

ID: java-best-practices/simplify-test-assertions-null

Language: Java

Severity: Notice

Category: Best Practices

Description

Test assertions can be made more concise through the use of a more specialized assertion method.

In this rule, we check for null comparisons in assertTrue or assertFalse methods and suggest replacing with either an assertNull or assertNonNull method.

This enhances the error message clarity and improves the overall readability of the assertion for other developers.

Non-Compliant Code Examples

import org.junit.Test;
import static org.junit.Assert.*;

class Foo {
    Object a,b;
    @Test
    void testFoo() {
        assertTrue(a == null); // could be assertNull(a);
        assertTrue(a != null); // could be assertNotNull(a);

        assertFalse(a == null); // could be assertNotNull(a);
        assertFalse(a != null); // could be assertNull(a);
    }
}

Compliant Code Examples

import org.junit.Test;
import static org.junit.Assert.*;

class Foo {
    Object a,b;
    @Test
    void testFoo() {
        assertNull(a);
        assertNotNull(a);

        assertNotNull(a);
        assertNull(a);
    }
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis

PREVIEWING: may/unit-testing