我正在使用 Frisby.js 来自动化我的 api。有两个api addUser和delete user,我需要在多个其他api之前使用它们然后删除它。在需要使用两个 api 的情况下,我使用以下块格式。
describe('Successfully change password', function () {
//addUser
beforeEach(function(done) {
frisby
.post(adduser_endpoint, newuser_payload)
.expect('status',200)
.done(done)
})
it('Enter valid Password to set password', function (done) {
frisby
.post(reset_password_endpoint, change_password_payload)
.expect('status', 200)
.done(done)
})
//delete user
afterEach(function(done) {
frisby
.del(del_user_endpoint)
.expect('status',200)
.done(done)
})
})
这是被多次调用的冗余代码。我试图提取这两个函数以便它可以重用,然后将上面的测试重写如下。但是,这是行不通的。
const addUser = function(done) {
frisby
.post(adduser_endpoint, newuser_payload)
.expect('status',200)
.done(done)
})
const delete =function(done) {
frisby
.del(del_user_endpoint)
.expect('status',200)
.done(done)
}
describe('Successfully change password', function () {
//addUser
beforeEach(addUser())
it('Enter valid Password to set password', function (done) {
frisby
.post(reset_password_endpoint, change_password_payload)
.expect('status', 200)
.done(done)
})
//delete user
afterEach(delete())
})