我有一种情况,如果驱动程序初始化在beforeclass注释中失败,我希望不会使我的测试用例失败。我在beforeclass中使用appium驱动程序设置,如果appium驱动程序无法识别连接的设备或无法实例化驱动程序本身,我的测试用例就失败了。而不是在前类失败时失败测试是否有解决方法?如果是,有什么替代方案?
(基本上我正在运行Jenkins的测试用例,如果jenkins构建失败,我们会触发警报以支持团队)
感谢您的时间。
答案 0 :(得分:2)
您可以在BeforeClass方法中捕获异常并为testng抛出SkipException以跳过所有测试。这会将测试用例标记为跳过而不是失败。
例如
@BeforeClass
public void bc(){
try{
//init driver
}catch(WebdriverInitException e){
throw new SkipException("Problem initializing driver "...trace);
}
}