TestNGを実行するときのsurefireはTestNGantタスクとどのように違うのだろうかと思っていました。その理由は、JUnitテストベースを拡張するTestNGテストを実行しようとすると、動作に一貫した違いが見られるためです(これは、ここで説明されているTestNGでJBehaveテストを実行するための回避策です:http://jbehave.org/documentation/faq/)。Surefireは私のテストをJUnitテストとして誤って検出しますが(おそらくそのベースがTestCaseであるため)、Antタスクは完全に実行されます。TestNGが両方のケースをどのように処理するかについての洞察を誰かが提供できますか?
テストは次のようになります。
public class YourScenario extends JUnitScenario {
@org.testng.annotations.Test
public void runScenario() throws Throwable {
super.runScenario();
}
}