Test assertions using operator comparison can be simplified

이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다.
현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우 언제든지 연락주시기 바랍니다.

Metadata

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

Language: Java

Severity: Notice

Category: Best Practices

Description

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

In this rule, we check for the use of operators, such as, == and != in assertTrue or assertFalse methods and suggest replacing with either a assertSame or assertNotSame 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 == b); // could be assertSame(a, b);
        assertTrue(a != b); // could be assertNotSame(a, b);

        assertFalse(a == b); // could be assertNotSame(a, b);
        assertFalse(a != b); // could be assertSame(a, b);
    }
}

Compliant Code Examples

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

class Foo {
    Object a,b;
    @Test
    void testFoo() {
        assertSame(a, b);
        assertNotSame(a, b);

        assertNotSame(a, b);
        assertSame(a, b);
    }
}
PREVIEWING: brett.blue/embedded-collector-release