Дело в том, что мой тест Passed, если я вручную нажимаю на "ОК" в алерте. А если не нажимаю - он ждет до последнего, а потом Failed, и ругается на Timeout. Вопрос, как мне нажать на "ОК" скриптом?
Ещё один вопрос - а почему alert не заменяется на mock функцию? Я же заменяю его в третьей строке. В чём проблема?
Вот мой тест:
it('should display an alert when the user tries to add empty value', async() => {
jest.setTimeout(50000);
const dialogHandler = jest.fn();
page.on('dialog', dialogHandler);
const addButtonSelector = '#root > div > div > div.ToDoInput > button';
await expect(page).toClick(addButtonSelector);
await expect(dialogHandler).toHaveBeenCalled();
const [firstCall] = dialogHandler.mock.calls;
const [dialog] = firstCall;
expect(dialog.message()).toEqual('Please enter a todo!');
})
Нужно создать обработчик диалогов и вызвать там метод:
async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
page.on('dialog', async dialog => { // создали обработчик диалогов
console.log(dialog.message());
await dialog.dismiss(); //или же dialog.accept()
await browser.close();
});
page.evaluate(() => alert('1'));
})();
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Установил Docker Toolbox for Windows 81 В контейнеры через docker-compose установил nginx, php-fpm, php-cli, nodejs Установил symfony 4
Я пытаюсь добавить свой метод для валидации поля с помощью jQueryvalidator
Я делаю <v-card> во vuetify и хочу сделать так, чтобы текст у меня был ограниченТ