我需要为每次火炮测试创建一个令牌: 我有一个函数将返回该令牌 我有一个函数,它将生成一个唯一的工作分配ID 我需要调用这些函数来创建它们的关联 变量。
variables:
jwt: getJWT()
assignmentId: getAssignmentId()
我需要通过jwt作为授权的一部分:
defaults:
headers:
Authorization: 'Bearer' + {{jwt}}
我还需要在url中传递AssignmentId:
scenarios:
- flow:
- get:
url: '/assignments/{{assignmentId}}/shifts'
这是我正在使用的功能:
const getAssignmentId = (next) => {
const TEST_ASSIGNMENT_ID = 'test_' + uuidcreate()
return [TEST_ASSIGNMENT_ID, next()]
}
const getJWT = (env = configEnv, next) => {
const instance = axios.create({
baseURL: env.baseEndpoint
})
return [instance
.post('/auth/token', {
client_id: env.clientId,
client_secret: env.clientSecret
})
.then(result => result.data.access_token), next()]
}
我想更好地了解如何正确执行此操作,以便更深入地了解设置。
目前我尝试过
处理器:'./ artillery-setup.js 变量: jwt:“ getJWT” assignmentId:“ getAssignmentID”
但是在登录时它们都是未定义的