Testing 如何使用空手道配置和使用/在配置环境之间切换

Testing 如何使用空手道配置和使用/在配置环境之间切换,testing,configuration,karate,Testing,Configuration,Karate,我试图通过位于同一目录中的karate config-.js文件配置不同的测试目标 当我尝试针对不同的目标系统执行测试时: mvn test -Dkarate.env=int02 (tried: -DargLine="-Dkarate.env=int02") 未执行karate-config-int02.js文件,测试执行在某个地方被卡住 我已经读过了,但是现在我还没有找到有效的例子 我正在maven3.6.0概念教授的示例项目中使用Java1.8在macOS上使用空手道0.9.4 扩展pom

我试图通过位于同一目录中的
karate config-.js
文件配置不同的测试目标

当我尝试针对不同的目标系统执行测试时:

mvn test -Dkarate.env=int02 (tried: -DargLine="-Dkarate.env=int02")
未执行
karate-config-int02.js文件,测试执行在某个地方被卡住

我已经读过了,但是现在我还没有找到有效的例子

我正在maven
3.6.0
概念教授的示例项目中使用Java
1.8
在macOS上使用空手道
0.9.4

扩展pom文件(如下所示)也不起作用:


int02
我认为通过
-Dkarate.env=int02
我可以确保
karate-config-int02.js
将用于配置我需要的特定于实例的属性

我在两个空手道配置文件中都有一行,如:

karate.log('karate-config |调用karate-config-int02')

但我总是看到:

空手道配置被调用


最简单的方法和90%的项目是使用一个
karate config.js
,然后根据文档使用一些
if-else
js逻辑。也许你可以坚持下去

var env = karate.env || 'dev';
var config = { someUrlBase: 'https://localhost:8080/' };
if (env == 'stage') {
  // over-ride only those that need to be
  config.someUrlBase = 'https://stage-host/v1/auth';
} else if (env == 'e2e') {
  config.someUrlBase = 'https://e2e-host/v1/auth';
}
return config;

否则,请遵循此流程,以便我们能够找出可能的错误:

最简单的方法,以及90%的项目是如何使用一个
karate config.js
,然后根据文档使用一些
if-Else
js逻辑。也许你可以坚持下去

var env = karate.env || 'dev';
var config = { someUrlBase: 'https://localhost:8080/' };
if (env == 'stage') {
  // over-ride only those that need to be
  config.someUrlBase = 'https://stage-host/v1/auth';
} else if (env == 'e2e') {
  config.someUrlBase = 'https://e2e-host/v1/auth';
}
return config;

否则,请按照此流程进行操作,以便我们找出可能的错误:

对不起,我看不出是什么错误,一切看起来都很好。你认为你能遵循这个过程吗:对不起,我看不出哪里出了问题,一切看起来都很好。您认为您可以遵循以下流程: