如何直接获取空手道特征文件中javaclass的静态变量值
How to get value of the static variable of the java class in karate feature file directly
我有一个 java class,其中包含应用程序所需的所有网址。我想在功能文件中访问它。我知道它可以通过创建一个 get 方法来访问。
* def Config = Java.type('App.Config')
* def stageEndPoint = Config.getStageEndPoint()
是否可以直接获取?
您可以编写一个空手道-config.js 文件,其中包含 URL,如下所示
function() {
return {
baseUrl: 'http://192.168.0.199'
}
}
您可以在测试中使用此 URL,如下所示
Background:
* url baseUrl
您应该能够在 karate-config.js
中使用这个现有的 Java class,这样它在您的功能文件中会变得更容易一些。例如:
function() {
var Config = Java.type('App.Config');
return {
stageEndPoint: Config.getStageEndPoint(),
someOtherEndPoint: Config.getSomeOtherEndPoint()
};
}
然后在你的功能中:
* url stageEndPoint
(edit):好吧,显然这还不够,所以这是另一个想法:
function() {
return {
Config: Java.type('App.Config')
};
}
然后:
* url Config.getStageEndPoint()
我有一个 java class,其中包含应用程序所需的所有网址。我想在功能文件中访问它。我知道它可以通过创建一个 get 方法来访问。
* def Config = Java.type('App.Config')
* def stageEndPoint = Config.getStageEndPoint()
是否可以直接获取?
您可以编写一个空手道-config.js 文件,其中包含 URL,如下所示
function() {
return {
baseUrl: 'http://192.168.0.199'
}
}
您可以在测试中使用此 URL,如下所示
Background:
* url baseUrl
您应该能够在 karate-config.js
中使用这个现有的 Java class,这样它在您的功能文件中会变得更容易一些。例如:
function() {
var Config = Java.type('App.Config');
return {
stageEndPoint: Config.getStageEndPoint(),
someOtherEndPoint: Config.getSomeOtherEndPoint()
};
}
然后在你的功能中:
* url stageEndPoint
(edit):好吧,显然这还不够,所以这是另一个想法:
function() {
return {
Config: Java.type('App.Config')
};
}
然后:
* url Config.getStageEndPoint()