2013-03-05 1 views
1

JUnit 4.0을 사용하여 응용 프로그램이 부울 메서드에서 예상되는 결과를 반환하는지 테스트하려고합니다.JUnit 어설 션 예외 발생

테스트는 다음과 유사합니다

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

public class ExampleTest{ 
    @Test 
    public void somethingTest(){ 
     String [] words={"one","two","one","two","one","two","one","two"}; 
     for(String word:words){ 
      Example example = new Example(word); 
      if(word.startsWith("o")){ 
       assertTrue(example.isO()); 
      }else{ 
       assertFalse(example.isO()); 
      } 
     } 
    } 
} 

내가 테스트, 올바른 작업 괜찮 주장을 실행

. 나는 실패 주장에 도착하면, 예외가 발생하고, 시험이 스택 반환 중지 있지만 :

java.lang.AssertionError 
    at org.junit.Assert.fail(Assert.java:92) 
    at org.junit.Assert.assertTrue(Assert.java:43) 
    at org.junit.Assert.assertTrue(Assert.java:54) 
    at core.ExampleTest.somethingTest.... 

내가 필요로하는 테스트가 정상적으로 계속하고, 나에게로 통과하고 실패한 테스트의 번호를 부여하는 것입니다 종료. 어떻게해야합니까?

답변

4

각 단어에 대해 하나의 테스트를 만들어야합니다. parameterized tests으로이 작업을 매우 쉽게 할 수 있습니다.