假设我有这个API测试,并且URL和凭据在生产和开发环境中有所不同:
before("Get auth token", async () => {
await spec().post(`${baseUrl}/auth`)
.withBody(
{
email: "testing+standard@test.com",
password: "test"
}
)
.expectStatus(200)
.expect((ctx) => {
expect(ctx.res.body.token).to.be.a("string")
state.token = ctx.res.body.token
})
}
);
现在,通过Cypress测试,您可以拥有如下json配置文件,每个环境一个:文章源自玩技e族-https://www.playezu.com/204829.html
{
"env": {
"baseUrl": "example",
"standardUserEmail": "testing+standard@test.com",
"standardUserPassword": "test"
}
}
然后像这样访问它:文章源自玩技e族-https://www.playezu.com/204829.html
cy.request({
method: "POST",
url: `${Cypress.env("baseUrl")}/auth`,
})
如果不使用Cypress,如何实现这样的目标?一个.env文件并不能准确地解决这个问题,我也不需要它,因为我需要存储在repo中的值。文章源自玩技e族-https://www.playezu.com/204829.html
软件测试功能名称文章源自玩技e族-https://www.playezu.com/204829.html 文章源自玩技e族-https://www.playezu.com/204829.html
未知地区 1F
我认为使用dotenv可以实现您的要求。
在HackaTalk项目中可以找到一个示例用例