我以編程方式創建我的testng.xml,並且想要添加每個我想運行的方法。我做它通過以下方式現在:TestNG運行每個方法,並忽略testng.xml中包含的方法
XmlClass myClass = new XmlClass("test.login.LoginTest");
List<XmlInclude> includedMethods = new ArrayList<XmlInclude>();
for (int k = 0; k < 10; k++) {
includedMethods.add(new XmlInclude("golog" + k));
}
myClass.setIncludedMethods(includedMethods);
據我所產生的testng.xml文件,似乎它工作正常:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite thread-count="11" verbose="11" name="Login Test" parallel="tests">
<test name="1" group-by-instances="true">
<classes>
<class name="test.login.LoginTest">
<methods>
<include name="golog1"/>
<include name="golog2"/>
<include name="golog3"/>
<include name="golog4"/>
<include name="golog5"/>
<include name="golog6"/>
<include name="golog7"/>
<include name="golog8"/>
<include name="golog9"/>
</methods>
</class> <!-- test.login.LoginTest -->
</classes>
</test> <!-- 1 -->
</suite> <!-- Login Test -->
的問題是,當我的代碼得到執行在生成xml文件後,每個@Test
方法都會執行(這些方法也有完全不同的名稱,例如「gssig01」),儘管我沒有包含它們。
我的問題是,我必須在包含任何東西之前排除每種方法,否則我做錯了什麼? :)
預先感謝您!
您最近如何運行測試?你在使用maven嗎? –
是的,我正在使用maven。 – peetya
你可以添加maven設置嗎?你如何告訴maven運行你生成的xml而不是執行默認配置? –