java - 由于失败绕过@Test dependsOnMethods

标签 java testing selenium-webdriver automation testng

我有一个关于 @Test(dependOnMethods{""}).. 我希望我的测试以特定的顺序运行,这样我就可以完成我编写的每个测试。到目前为止,至少我发现的最好的方法是 dependsOnMethods!但是,由于后面的测试需要之前的测试通过,所以我无法运行所有测试并查看哪些测试失败了。我的程序刚刚退出!所以这就是我正在使用的..

@Test(dependsOnMethods = {"shouldSelectAmountOfDoors"})
public void shouldSelectExtColor() throws InterruptedException{
    sycOptionalInfoPage.selectExtColor("GREEN");
}

@Test(dependsOnMethods = {"shouldSelectExtColor"})
public void shouldSelectIntColor() throws InterruptedException{
    sycOptionalInfoPage.selectIntColor("GOLD");
}

@Test(dependsOnMethods = {"shouldSelectIntColor"})
public void shouldEnterAComment() throws InterruptedException{
    sycOptionalInfoPage.enterComments("<(*-<)  <(*-*)>  (>-*)>   woot!");
    takeABreakYo();
}

繁荣。非常容易理解和值得信赖的 POM!但是,如果我的 shouldSelectIntColor() 由于开发团队更改了 id 而失败,我希望 shouldEnterAComment 仍然运行!我怎样才能继续将我的测试链接成一条线,但在失败后仍然运行?谢谢:)

最佳答案

您可以使用 priority 而不是 dependsOnMethods 来实现您想要的:

@Test(priority = 1)
public void shouldSelectIntColor() throws InterruptedException{
}

@Test(priority = 2)
public void shouldEnterAComment() throws InterruptedException{
}

这里如果你的shouldSelectIntColor方法失败,它仍然会执行shouldEnterAComment测试方法。

关于java - 由于失败绕过@Test dependsOnMethods,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32098670/

相关文章:

ruby-on-rails - 我如何在 capybara 中单击此按钮

perl - 在 Perl 中测试查询字符串 unicode 处理

java - Selenium 网络驱动程序。从 div 列表中选择元素

java - 在图像上附加文本时指定行距

java - 错误无法解析 androidmanifest.xml 中的 xml

java - 在java中使用TreeViewer [Antlr4]仅显示完整的树而不是层次结构数据

java - Selenium 在页面部分中搜索文本并单击其中的按钮

java - Wav 文件作为频率图像

Android 特拉维斯 CI 错误 : failed to find target with hash string 'android-23' in:/usr/local/android-sdk

python - 我需要 Selenium 以更大的分辨率打开它的网络浏览器(最好是最大化)