如何在karate-config.js上将多个参数传递给callSingle karate
我有一个.feature文件,它将从另一个feature文件接收参数作为_arg来为oAuth生成令牌如何在karate-config.js上将多个参数传递给callSingle karate,karate,Karate,我有一个.feature文件,它将从另一个feature文件接收参数作为_arg来为oAuth生成令牌 Given url urlRefreshToken Given def json = __arg And header Content-Type = 'application/json; charset=utf-8' And request json * header Authorization = 'Bearer' + __arg.refresh_token When metho
Given url urlRefreshToken
Given def json = __arg
And header Content-Type = 'application/json; charset=utf-8'
And request json
* header Authorization = 'Bearer' + __arg.refresh_token
When method POST
Then status 200
* def bearer = 'Bearer ' + response.access_token
我试图在karate config.js
上集中生成一次令牌。但是,我似乎无法将karate.callSingle()与传递的参数一起使用
我使用该功能文件在其他功能文件上生成令牌,如下所示:
* def getToken = call read('classpath:features/Utils/GetToken.feature') refreshTokenRaymond
* header Authorization = getToken.bearer
我试图在karate config.js
上调用生成令牌的功能文件,但没有成功。我试图在karate config.js
上传入这样的附加参数:
var config = {
baseUrl: 'url',
urlRefreshToken: 'url',
refreshToken: '{refreshToken: refreshToken}'
};
var token = karate.callSingle('classpath:features/Utils/GetToken.feature', [config, config.refreshToken])
我想知道是否可以将多个参数传递给从karate config.js
调用的karate.callSingle()
任何帮助都将不胜感激。谢谢
call
和karate.callSingle()
只接受一个参数,但您可以轻松地从其他JSON中创建新的JSON。实际上,由于您似乎将config
作为参数传递,因此您可以轻松地将config.refreshttoken
作为\uu arg.refreshttoken
访问
您的代码非常混乱-但希望这一提示能够帮助您顺利完成任务:
Given def json = __arg.refreshToken
如果您需要使用其他数据创建JSON,我认为您已经知道如何做到这一点:
var temp = { config: config, refreshToken: refreshToken };
var token = karate.callSingle('classpath:features/Utils/GetToken.feature', temp);