需要在所有测试用例执行之前执行“健康检查”测试(功能)。
这就像执行一堆测试用例之前的初步测试。如果任何预检查失败,则需要退出平台的解决方案。
执行您的健康检查功能karate-config.js
using karate.call
/karatecallSingle
,
如果你的功能无法使用javaSystem.exit
强制终止你的测试。
karate-config.js 的片段
try{
var healthCheckInput = {};
var healthcheckCall = karate.callSingle("healthCheck.feature",healthCheckInput );
if (!<healcheckCondition>){
java.lang.System.exit(0);
}
}
catch(e){
java.lang.System.exit(0);
}
如果您的健康检查条件失败,这将强制退出您的执行。
不确定 karate.abort() 是否会从平台软退出,但如果您打算实施,也可以尝试一下。
Note:由于 System.exit() 强制终止您的执行,因此您将无法正确获得任何报告,但您可以参考控制台日志/空手道日志
以便进一步调查。
EDIT:
另一种方法,
您可以使用空手道 Java API在朱尼特内部@BeforeClass
运行您的健康状态检查功能。
@BeforeClass
public static void startUpCheck() {
Map<String, Object> args = new HashMap();
args.put("inputOne", "valueOne");
Map<String, Object> result = Runner.runFeature("classpath:stackoverflow/demo/healthCheck.feature", args, true);
// also assert the 'result' if you want OR keep some assertions/match in your feature
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)