在AVA中,默认情况下是没有超时设置的,测试会一直运行直到完成或发生错误。但是,你可以通过使用timeout
选项来设置超时时间。以下是一个包含代码示例的解决方法:
import test from 'ava';
test('example test', async t => {
// 设置超时时间为1秒
t.timeout(1000);
await new Promise(resolve => setTimeout(resolve, 2000));
t.pass();
});
在上面的示例中,t.timeout(1000)
将超时时间设置为1秒。然后,我们使用await new Promise(resolve => setTimeout(resolve, 2000))
来模拟一个耗时2秒的操作。由于超时时间设置为1秒,所以测试将在1秒后超时并失败。
请注意,如果你在package.json
文件中设置了"ava"
字段,你也可以在那里设置全局的超时时间,例如:
{
"ava": {
"timeout": "1000"
}
}
这样,在所有测试中,如果没有在单独的测试中设置超时时间,都会使用全局设置的超时时间。