Я не уверен, почему я получаю эту ошибку.Я вызываю функцию done()
и определяю jasmine.DEFAULT_TIMEOUT_INTERVAL
.Почему он выдает эту ошибку.
Тайм-аут - асинхронный обратный вызов не был вызван в течение времени ожидания, указанного в jasmine.DEFAULT_TIMEOUT_INTERVAL.
describe('Puppeteer', () => {
let originalTimeout;
beforeEach(function () {
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
});
it('Logs in, redirects and does something', async (done) => {
const browser = await puppeteer.launch({
headless: true,
args: [
'--incognito'
]
});
const page = await browser.newPage();
await page.goto('localhost:3000/login');
... // Login Credentials
await page.waitForNavigation({ waitUntil: 'load' }); // redirects
... // perform some action on website
expect(a < b)
.toEqual(true);
browser.close();
done();
});
afterEach(function () {
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
});
});
Это ничего не делает ни
describe('...', () => {
it('...', async (done) => {
....
}, 10000);
});
Написание этого способа работает, но почему?
describe('Puppeteer', () => {
it('Logs in, redirects and does something', () => {
(async () => {
const browser = await puppeteer.launch({
headless: true,
args: [
'--incognito'
]
});
....
expect(a < b)
.toEqual(true);
browser.close();
})();
});
});