测试在没有 运行 任何断言的情况下完成 (ava-nodejs)
Test finished without running any assertion (ava-nodejs)
为什么这个测试 return 测试在没有 运行 任何断言 的情况下完成?承诺处理有问题吗?如果我 运行 服务器上的这段代码一切正常。
test.serial('test with req' , async (assert) => {
var promise = new Promise(function(resolve, reject) {
request('https://www.random.org/integers/?num=1&min=1&max=100&col=5&base=10&format=plain&rnd=new',
(error, response, body) => {
console.log(response)
if(!error){
resolve(body)
} else {
reject(error)
}
})
})
promise.then((result) => {
console.log(result);
assert.true(result !== undefined)
}, (err) => {
console.log(err)
assert.true(err !== undefined)
})
})
鉴于 request
已经有 promise 支持,您可以使用 async
/ await
在 2 行中重写这个完整的测试
test.serial('test with req' , async (assert) => {
const result = await request('https://www.random.org/integers/?num=1&min=1&max=100&col=5&base=10&format=plain&rnd=new');
assert.true(result !== undefined);
})
为什么这个测试 return 测试在没有 运行 任何断言 的情况下完成?承诺处理有问题吗?如果我 运行 服务器上的这段代码一切正常。
test.serial('test with req' , async (assert) => {
var promise = new Promise(function(resolve, reject) {
request('https://www.random.org/integers/?num=1&min=1&max=100&col=5&base=10&format=plain&rnd=new',
(error, response, body) => {
console.log(response)
if(!error){
resolve(body)
} else {
reject(error)
}
})
})
promise.then((result) => {
console.log(result);
assert.true(result !== undefined)
}, (err) => {
console.log(err)
assert.true(err !== undefined)
})
})
鉴于 request
已经有 promise 支持,您可以使用 async
/ await
test.serial('test with req' , async (assert) => {
const result = await request('https://www.random.org/integers/?num=1&min=1&max=100&col=5&base=10&format=plain&rnd=new');
assert.true(result !== undefined);
})