如何在空手道中添加配置文件变量

How to add profile variable in Karate

目前我正在使用以下命令 运行 我的特征文件:

mvn test -Dcucumber.options="--plugin html:target/cucumber-html --tags @dogs" -Dtest=TestParallel.java  -Dkarate.env=Pets

但我希望在调用 运行 命令时添加另一个变量。像这样:

mvn test -Dcucumber.options="--plugin html:target/cucumber-html --tags @dogs" -Dtest=TestParallel.java  -Dkarate.env=Pets -Dname=Charlie

我该怎么做?

您可以结合使用 Java 系统属性和读取 karate.properties

来传递额外的动态参数
mvn test -Dtest=TestParallel.java  -Dkarate.env=pets -Dmy.name=foo

然后在karate-config.js

var myName = karate.properties['my.name'];

甚至在任何功能文件中:

* def myName = karate.properties['my.name']

请注意,-Dcucumber.options="--plugin html:target/cucumber-html" 对空手道和将来 will be deprecated 没有任何影响。