我有一个场景,我的一些测试在IE和Firefox上运行,但在Chrome上工作。所以我认为在testng.xml中可以跳过包含测试的类。
示例testng.xml
<suite name="Test " parallel="tests" data-provider-thread-count="2">
<listeners>
<listener class-name="ww5.listener.Listener" />
</listeners>
<test name=" Chrome" preserve-order="true" >
<parameter name="browser" value="chrome"/>
<parameter name="URL" value="http://95" />
<classes>
<class name="ww5.testcases.storageRuleSuite.GoToStorageRulePageTest" ></class>
<class name="ww5.testcases.storageRuleSuite.CreateNewStorageRuleTest" ></class>
</classes>
</test>
<test name="IE" preserve-order="true">
<parameter name="browser" value="internet explorer"/>
<parameter name="URL" value="http://95" />
<classes>
<class name="ww5.testcases.storageRuleSuite.GoToStorageRulePageTest" ></class>
<class name="ww5.testcases.storageRuleSuite.CreateNewStorageRuleTest" ></class>
</classes>
</test>
<test name="Firefox" preserve-order="true">
<parameter name="browser" value="firefox"/>
<parameter name="URL" value="http://95" />
<classes>
<class name="ww5.testcases.storageRuleSuite.GoToStorageRulePageTest" ></class>
<class name="ww5.testcases.storageRuleSuite.CreateNewStorageRuleTest" ></class>
</classes>
</test>
我可以在testng.xml中指定某个地方,我想跳过测试
<class name="ww5.testcases.storageRuleSuite.CreateNewStorageRuleTest" ></class>
在firefox测试中。
答案 0 :(得分:0)
您可以使用IHookable侦听器。
public class MyHook implements IHookable {
public void run(final IHookCallBack icb, ITestResult testResult) {
ITestContext context = testResult.getTestContext();
String browser = context.getAttribute("browser");
if ("firefox".equals(browser) && <add your logic here>) {
throw new SkipException("The method " + ... + " is not working with firefox");
}
icb.callback(testResult);
}
}
然后,只需testng.xml
中的register the listener。
答案 1 :(得分:0)
您可以将失败的测试分配给组:
@Test(groups = { "failures" })
然后在testng.xml
内添加:
<test name="Firefox" preserve-order="true">
<parameter name="browser" value="firefox"/>
<parameter name="URL" value="http://95" />
<groups>
<run>
<exclude name="failures"/>
</run>
</groups>
<classes>
<class name="ww5.testcases.storageRuleSuite.GoToStorageRulePageTest" ></class>
</classes>
</test>
然后,您可以将该组添加到当前失败的任何测试中。