gpt4 book ai didi

java - 尝试使用断言运行 AfterMethod

转载 作者:行者123 更新时间:2023-11-30 05:45:10 24 4
gpt4 key购买 nike

我的测试类中有很多测试方法。我的目标是能够使用断言两次:第一次在每个测试中,第二次在每个 AfterMethod 测试中。

这是我的代码示例:

 @AfterMethod(alwaysRun = true )
public void reportTestFail() {

String a = getAllParameters().get("A");
if (a.contains("1")) {
asserter.fail("1 is found in parameters");
}
else {
asserter.assertTrue(true,"Test passed");
}
}

为什么每次测试结束时我总是配置失败?

我不能在测试方法之外断言吗?

最佳答案

在这种情况下,您应该使用 TestNG IInvokedMethodListener2IInvokedMethodListener(对于 TestNG 版本 7+),并在 afterInitation 中进行额外验证。在实现此方法时,您应该在 try-catch block 中编写断言,并在 catch block 中将 testMethod 状态设置为失败并设置异常。例如:

public void afterInvocation(IInvokedMethod method, ITestResult testResult, ITestContext context){
try{
//perform addition validations
}catch(Exception e){
//assertion failed
//update testResult to fail
}
}

要修改测试用例的结果,请参阅 qaf 中的代码.

关于java - 尝试使用断言运行 AfterMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54985180/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com