我正在嘗試讓Gradle執行一些使用testng.xml文件定義的測試。我的testng.xml文件如下所示:如何告訴Gradle使用我的testng.xml文件進行測試類和排序?
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="mySuite" verbose="1">
<listeners>
<listener class-name="mypackage.MyListener" />
<listener class-name="mypackage.TestOrderer" />
</listeners>
<test name="Tests">
<classes>
<class name="mytestpackage.CrazyTest1"/>
<class name="mytestpackage.CrazyTest2"/>
<class name="mytestpackage.CrazyTest3"/>
</classes>
</test>
</suite>
那麼爲什麼我需要這個?我想確保我的測試按照與here中列出的註釋類似的註釋方式進行組織。正如你可能猜到的,TestOrderer是一個IMethodInterceptor。
這是問題所在,Gradle似乎在接管我的testng.xml文件並且抓取測試目錄來找到它想要執行的測試。即使我禁用了它,也無法正確執行這些方法。以下是我認爲應該工作的內容,但僅僅是,不。
test {
useTestNG()
options.suites("src/test/resources/crazyTestNG.xml")
# Adding
# scanForTestClasses = false
# causes zero tests to be executed, since the class names don't end in Test
}
現在看來似乎應該是一個沒有腦子...叉TestNG的過程中,並讓它運行,但我無法弄清楚如何告訴搖籃走出的方式,只是執行我的試驗。
否我需要指定測試類。由於TestNG引擎的特定用例,我需要讓它們以特定的順序運行。掃描打破了這個過程。 – 2011-01-24 13:20:41