如何在Java及Selenium Cucumber环境中标记测试为PENDING状态
在Java Selenium Cucumber中标记测试用例为PENDING状态
针对你的临时需求,完全不需要修改Jenkins配置,在Cucumber Java环境里有个原生且简单的方法就能实现:
方法:抛出Cucumber内置的PendingException
Cucumber本身提供了PendingException,当步骤定义中抛出这个异常时,对应的测试用例/步骤会被标记为PENDING(部分版本可能显示为UNIMPLEMENTED),而不是直接判定为FAILED或PASSED。
具体代码示例
在你的步骤定义类中,找到需要标记为pending的步骤,直接抛出这个异常即可:
import io.cucumber.java.PendingException; import io.cucumber.java.en.Given; import io.cucumber.java.en.When; public class UIStepDefinitions { @Given("I navigate to the login page") public void navigateToLoginPage() { // 正常执行的步骤逻辑 // ... } @When("I submit invalid credentials") public void submitInvalidCredentials() { // 临时标记此步骤为Pending,可替换原有逻辑或在逻辑末尾抛出 throw new PendingException("临时标记:此测试用例暂不执行,状态设为Pending"); } }
效果说明
运行测试后,Cucumber的测试报告里会把抛出该异常的步骤/场景标记为PENDING状态,完全不会影响其他正常测试的PASSED/FAILED结果,也不需要任何Jenkins层面的配置调整,非常适合你的临时需求。
注意:正如你所说,这只是临时方案,长期来看测试用例应该只有PASSED/FAILED两种状态,用完记得移除这个异常哦!
内容的提问来源于stack exchange,提问作者Xovika
相关产品推荐
相关产品推荐

