正如针对独立jar所记录的那样,我试图为我的功能提供args,但无法弄清楚如何使其工作。我想念什么?
我的命令行:
java -jar c:\karate\karate-0.9.1.jar -a myKey1=myValue1 TestArgs.feature
空手道config.js
function fn() {
var env = karate.env;
karate.log('karate.env system property was:', env);
if (!env) {
env = 'test';
}
var config = { // base config JSON
arg:karate.properties['myKey1']
};
return config;
}
TestArgs.feature功能:测试参数
Scenario: print args
* print myKey1
* print arg
* print karate.properties['myKey1']
* print karate.get('myKey1')
我什么也没打印出来:java -jar c:\ karate \ karate-0.9.1.jar -a myKey1 = myValue1 TestArgs.feature
10:32:57.904 [main] INFO com.intuit.karate.netty.Main-空手道版本:0.9.1
10:32:58.012 [main] INFO com.intuit.karate.Runner-空手道版本:0.9.1
10:32:58.470 [ForkJoinPool-1-worker-1]信息com.intuit.karate-karate.env系统属性为:null
10:32:58.489 [ForkJoinPool-1-worker-1]信息com.intuit.karate-[打印]
10:32:58.491 [ForkJoinPool-1-worker-1]信息com.intuit.karate-[打印]
10:32:58.495 [ForkJoinPool-1-worker-1]信息com.intuit.karate-[打印]
10:32:58.501 [ForkJoinPool-1-worker-1]信息com.intuit.karate-[打印]
实际上,我们打算删除文档,抱歉,因为该-a / --args
选项不再受支持。
当然,您可以使用此karate.properties['some.key']
方法从命令行解包值。还请参阅如何获取环境变量:https : //github.com/intuit/karate/issues/547
我的建议是,您可以karate-config-<env>.js
根据需要从文件中读取一堆变量。例如,鉴于此功能:
Feature:
Scenario:
* print myKey
和这个文件karate-config-dev.js
:
function() { return { myKey: 'hello' } }
您可以运行以下命令,这将自动加载config js文件:
java -jar karate.jar -e dev test.feature
我们将更新文档。感谢您抓住这一点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句