有没有一种更简单的方法来调用空手道测试中的Java断言,并为断言提供失败消息?我有种感觉,一定有更优雅的方式吧?
以下是我现在如何错误地这样做:
* def assertNotBlank =
"""
function(val, msg) {
var Assertions = Java.type('org.junit.jupiter.api.Assertions');
var StringUtils = Java.type('org.apache.commons.lang3.StringUtils');
var JSONObject = Java.type('org.json.JSONObject');
return Assertions.assertFalse(StringUtils.isBlank(
new org.json.JSONObject(val).toString()), msg);
}
"""
然后在您的功能文件中调用它,如下所示:
And eval assertNotBlank {val: '#(response)', msg: 'The reason here.'}
发布于 2020-03-19 01:41:32
看到这段代码让我觉得你最好不要使用空手道,而是坚持使用Java语言,特别是当我看到像new org.json.JSONObject
这样的东西时。空手道这么擅长处理JSON,你到底为什么要这么做?
此外,您可能指的是call
而不是eval
。
也就是说,这个答案可能会给你一些提示,也可以阅读评论:https://stackoverflow.com/a/60693949/143475
https://stackoverflow.com/questions/60749353
复制相似问题