Как я могу использовать функции setTimeout () в тестовых случаях Mocha?
Я пишу тест в Mocha / Node js и хочу использовать setTimeout, чтобы подождать некоторое время, прежде чем выполнить блок кода.
Как я могу сделать это?
Похоже, что в тестовом случае Mocha setTimeout () не работает. (Я знаю, что вы можете установить TimeTimeout для каждого теста и для каждого файла теста, это не то, что мне нужно здесь.)
В js-файле запустите с Node, т.е.node miniTest.js
, это будет ждать 3 секунды, а затем напечатает строку внутри функции setTimeout.
console.log('waiting 3 seconds...');
setTimeout(function() {
console.log('waiting over.');
}, 3000);
В js-файле запустите с Mocha, т.е.mocha smallTest.js
, это не будет ждать, и завершит выполнение и завершит работу, даже не напечатав строку внутри функции setTimeout.
mocha = require('mocha');
describe('small test', function() {
it('tiny test case', function() {
console.log('waiting 3 seconds...');
setTimeout(function () {
console.log('waiting over.')
}, 3000);
});
});