programing

Junit 4가 기본 테스트 클래스를 무시하도록하는 방법은 무엇입니까?

shortcode 2021. 1. 17. 11:17
반응형

Junit 4가 기본 테스트 클래스를 무시하도록하는 방법은 무엇입니까?


모두 필요한 도우미 메서드가있는 많은 테스트에 대한 기본 클래스가 있습니다.

그 자체로는 테스트가 없지만 JUnit (일식에서)은 테스트 러너를 호출하고 테스트 할 방법이 없다고 불평합니다.

이 클래스를 무시하도록하려면 어떻게해야합니까?

dummyTest문제를 해결할 수있는 방법을 추가 할 수 있다는 것을 알고 있지만 모든 어린이 클래스에도 나타날 것입니다.

제안?


@Ignore주석에 사용합니다 . 수업에서도 작동합니다. 이것을보십시오 :

@Ignore public class IgnoreMe {
                        @Test public void test1() { ... }
                        @Test public void test2() { ... }
                }

또한 @Ignore를 사용하여 테스트 메서드가 포함 된 클래스에 주석을 달 수 있으며 포함 된 테스트가 실행되지 않습니다.

출처 : JUnit JavaDoc


참고로 항상 무시하는 이유를 제시하는 것이 좋습니다.

@Ignore("This test will prove bug #123 is fixed, once someone fixes it")

ant에서 테스트를 실행할 때 사용되는 junit xml 보고서 포맷터가 언젠가는 무시 된 횟수 (및 이유)와 통과, 실패 및 오류가 포함되기를 바랍니다.


abstractJUnit 4 에서는 클래스를 만드는 것으로 충분해야합니다. 작동하지 않으면 사용중인 JUnit 버전을 다시 확인하십시오.

이것은 또한 이것이 단지 테스트의 일부라는 의도를 전달합니다.

또한 JUnit이 클래스의 테스트를 "무시 됨"으로 계산하는 것을 방지합니다 (따라서 무시 된 테스트의 최종 개수는 예상 한 값이됩니다).

또는 클래스 이름을 바꿉니다. 대부분의 실행자는 클래스 이름을 사용하여 어떤 클래스가 테스트이고 어떤 클래스가 도우미인지 확인합니다. 기본 설정이있는 Maven에서는 기본 클래스가 ( http://maven.apache.org/surefire/maven-surefire-plugin/examples/로 시작하거나 끝나지 Test않고 끝나지 않는지 확인해야합니다 . include-exclusion.html )TestCase


두 가지 옵션이 있습니다.

  1. 기본 테스트 클래스 abstract를 만들어야합니다 . Junit4는 충분합니다. @Igonre 속성을 사용하면 무시 된 테스트로 표시되고 총 테스트 수에 추가됩니다.

  2. 테스트 이름의 시작이나 끝에 Test (대소 문자 구분)라는 단어가 없거나 끝에 TestCase 라는 단어가 포함되지 않도록 테스트 클래스의 이름을 변경할 수 있습니다 .

BTW : @Igonre는 특정 테스트를 무시하고 싶을 때 다른 사용 사례를위한 것입니다.

참조 URL : https://stackoverflow.com/questions/461644/how-to-get-junit-4-to-ignore-a-base-test-class

반응형