我下载了《空手道》作为独立的可执行文件,它运行良好。
我想在'log'输出中屏蔽敏感头。我认为这样做的方法是通过配置logModifier。
但是,我不知道如何使它有效。
我试了如下:
- 把这段代码放在我的
karate-config.js
:
var LM = Java.type('demo.headers.DemoLogModifier');
karate.configure('logModifier', LM.INSTANCE);
- 在空手道独立二进制文件存在的根目录中,我创建了目录src/demo/headers/,然后将我的DemoLogModifier.java放在该目录中。我还尝试将.java放在不同的树中:src/test/java/demo/headers。我还尝试将相同的目录层次结构放在我的*的根。特性文件是。在每种情况下,空手道在每个场景中都失败了,显示"TypeError:访问宿主类demo.headers.DemoLogModifier不允许或不存在"。
对于独立的可执行文件是否可以这样做?如果有,怎么做?
如果不是,那又如何?我是一个java新手,我不能从文档中看出如何使我自己的独立jar和包含我的自定义DemoLogModifier.java类。
谢谢!
是的,当您需要使用LogModifier
时,它要求您构建Java代码。
你可以参考这个答案,它应该会让你的方式:https://stackoverflow.com/a/56458094/143475
好的方面是Java方面是一次性的工作,所以一定要考虑获得其他人的帮助来完成这部分工作。然后你就可以开始运行了。
请随意提交功能请求,以便将来独立的JAR更容易实现这一点。