我正在使用node v9.4.0运行。在我的测试套件中,如何使用箭头符号设置超时。以下
describe('Test Stratum client[callbacks]', () => {
this.timeout(5000);
// Test for onConnect getting called
it('onConnect', (done) => {
导致错误
_this.timeout(5000);
^
TypeError: _this.timeout is not a function
在不改变“describe”行的情况下,我可以用什么语法来设置超时?
答案 0 :(得分:0)
您可以将其余内容包装在函数中并使用setTimeout
describe('Test Stratum client[callbacks]', () => {
setTimeout(() => {
// Test for onConnect getting called
it('onConnect', (done) => {
//The rest of your code, etc etc
});
//blah blah blah
}, 5000);
替代方法
Node.js或JavaScript中没有超时。但是,如果您在异步上下文中工作,则可以使用解决方法:
const timeout = ms => new Promise(res => setTimeout(res, ms));
describe('Test Stratum client[callbacks]', async () => {
await timeout(5000);
//etc etc
请注意第二行async
之前的() => {