2010-06-25 3 views
0

TestNG ant tasks보다 TestNG를 실행하는 것이 얼마나 다른지 궁금합니다. 그 이유는 JUnit 테스트 기반을 확장하는 TestNG 테스트를 실행할 때 동작의 일관된 차이가 발생한다는 것입니다 (이것은 TestNG에서 JBehave 테스트를 실행하는 해결 방법입니다 : http://jbehave.org/documentation/faq/). Surefire는 JUnit 테스트가 내 테스트를 잘못 (Ant가 완벽하게 실행되는 동안 그베이스가 TestCase이기 때문에) 잘못 감지합니다. 누구나 TestNG가 두 경우 모두 처리하는 방법에 대한 통찰력을 제공 할 수 있습니까? 다음과 같이TestNG Ant tasks 대 Surefire

시험은 같습니다

public class YourScenario extends JUnitScenario { 

@org.testng.annotations.Test 
public void runScenario() throws Throwable { 
    super.runScenario(); 
} 
} 

답변

3

짧은 대답은 우리의 테스트의 일부이고 나는 항상 최신 상태로 남아 있는지 확인하도록 개미 작업의 TestNG를 배포의 일부이다 TestNG.

Surefire는 Maven 프로젝트의 일부로 개발 되었기 때문에 때로는 뒤떨어져 있습니다. (그리고 당신과 마찬가지로, 명령 줄에서 실행할 때 Surefire로 테스트를 실행할 때 버그가 발생하기도합니다./개미/이클립스).

이 질문을 메이븐 팀 (Maven team)의 관심에 가져다 주겠다.

+0

감사합니다. Cedric .. – shipmaster

1

이것은 알려진 버그 인 것 같습니다 : http://jira.codehaus.org/browse/SUREFIRE-575.

확실한 자동 테스트 사례 검색 대신 TestNG XML Suite 정의를 사용해 보셨습니까?

+0

테스트를 실행하기 위해 필터를 통과시키고 있기 때문에 작동하지만 불행히도 도움이되지 않을 수 있습니다. (**/* Test). 그러므로 Ant 태스크를 고수하는 것은 스크립트 입력을 사용하여 XML을 수정하는 스크립트를 실행하는 것보다 쉽습니다. – shipmaster