JUnit4의 @Ignored와 JUnit5의 @Disabled 어노테이션은 테스트를 비활성화 하거나 이론적 해석을 제공하는데 사용되어야만 합니다.

 

인프라 이슈로 테스트가 실패할 때 일시적으로 무시하는 것을 원할 수도 있습니다. 그러나 왜 이 테스트가 무시되었는지 어떤 표기가 없다면, 이 테스트는 재활성화될 것입니다. 이러한 테스트는 프로젝트에 대한 배경 지식 없이는 설명하기 어렵고 프로젝트를 오염시키게 될 것 입니다.

이 규칙은 각 무시된 테스트가 왜 무시되었는지 어떤 코멘트도 없는 경우 문제를 제기합니다.

  • Junit4애서는 @Ignore 어노테이션을 타겟으로 합니다.
  • Junit5에서는 @Disabled 어노테이션을 타겟으로 합니다.
  • 테스트를 스킵하기 위해 assumeTrue(false) 또는 assumeFalse(true)를 사용하는 경우도 해당합니다.

규칙을 어긴 코드

@Ignore  // 규칙을 어긴 코드 
@Test
public void testDoTheThing() {
// ...

or

@Test
public void testDoTheThing() {
    Assume.assumeFalse(true); // 규칙을 어긴 코드
    // ...

규칙을 준수한 코드

@Test
@Ignore("See Ticket #1234")
public void testDoTheThing() {
    // ...

If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project