2014-10-23 4 views
3

어떻게 성공이 테스트 케이스 결과 (내 JUnit을 창에서 즉 녹색) 할 수 있습니다 그들은 안하지만JUnit assertFalse (true) -> 성공적인 테스트 케이스?

@Test public void caseForXFiles(){ 
    Assert.assertFalse(true); 
} 

또한, 모든 경우 다른 종류의 성공. 나는이 함수를 사용할 때 명시 적으로 어설 션을 활성화 할 필요가 없다고 가정한다. 왜냐하면 아무런 차이가 없어도 assert을 사용하지 않기 때문이다. 비록 예기치 않은 (적절하게 컴파일 할 수없는) Exception을 던지더라도 테스트 케이스는 붉은 색으로 변하지 않을 것입니다. 내 두 번째 콘솔에서 얻을 수

Okt 23, 2014 5:18:43 PM org.jboss.arquillian.drone.webdriver.factory.remote.reusable.ReusedSessionPernamentFileStorage readStore 
Information: Reused session store is not available at C:\Users\xx\.drone-webdriver-session-store, a new one will be created. 
Okt 23, 2014 5:18:54 PM org.jboss.arquillian.protocol.jmx.JMXMethodExecutor invoke 
Schwerwiegend: Failed: de.xx.MyTest.caseForXFiles 

도대체 무슨 일이 벌어지고있는거야? JBoss 6.2.4와 Arquillian을 사용하고 있습니다.

편집 : 추가 조사를 한 후이 줄이 문제를 일으키는 것으로 나타났습니다. 이 실행 (System.out.print으로 시도했지만 나타나지 않았다)되지 않습니다 동안 내 테스트 케이스는 JUnit을 녹색 표시됩니다 :

@Before public void setUp() throws Exception { 
    rBean.getUserId(); // a simple getter on a String field, no side effects 
} 

내 rBean의 @PostConstruct 제대로 충전 할 수없는 것 같다. 그러나 설명 된 행동의 결과는 저에게 버그처럼 보입니다.

추가 정보 :
rBean는 :

@Inject @CurrentUser private MyCurrentUser currentUser; 
@PostConstruct private void postConstruct() { 
    userId = currentUser.getUserId(); 
} 

객체 currentUser는 내가에 액세스 할 수없는 일부 회사의 프레임 워크에 의해 주입된다. 그래도 IUser (액세스 없음)를 구현하는 MyCurrentUser 클래스에 액세스 할 수 있습니다. 궁극적으로 독점적 주석이있는 Bean 메소드에서 테스트 케이스를 실행하려고합니다. 이러한 주석 함수를 호출하는 테스트 함수를 작성하여 주석을 무시할 수 있습니다.이 경우 주석은 보지 않습니다.
현재 사용자가 login()을 사용할 수 없기 때문에 문제가있는 것처럼 보입니다. 어두운 곳에서 뭔가 이상하게 잘못되었습니다.

+0

Assert.assertFalse (true)가 확실히 실패해야합니다. org.junit.Assert.class를 확인하십시오. – Unknown

+0

junit 3과 4 스타일을 혼합하지 않습니까? 아마도 Junit 3이 testXxxxx로 시작하는 메소드를 기대하기 때문에 @Test가 선택되지 않을 수도 있습니다. – geert3

+0

테스트에서 주변을 더 제공하십시오. 현재 제공된 정보는 문제를 진단하는 데 충분하지 않습니다 ... – Vogel612

답변

0

이 버그는 Arquillian 1.1.4와 관련이 있으며 1.1.5에서 수정되었습니다.

도 참조하십시오. here.

관련 문제