Этот скрипт выполняет вход на сайт. Это мой первый шутливый тест. В последней строке перед тестом в раскрывающемся списке ul. Затем мы переходим на новую страницу с URL-адресом https://uat2.onplanapp.com/# /
В качестве простого теста я пытаюсь проверить, действительно ли это URL-адрес новой страницы. Когда я смотрю в браузере, скрипт входит в систему и переходит на нужную страницу.
Получение ошибки показано ниже.
Код
/**
* @name Onplan Login
* @desc Logs in and test for correct page title
*/
const puppeteer = require('puppeteer');
const assert = require('assert');
let browser;
let page;
beforeAll(async () => {
browser = await puppeteer.launch({
headless: false,
devtools: true
//slowMo: 50
});
const page = await browser.newPage();
await page.goto('https://uat2.onplanapp.com/#/sheet/139');
await page.waitFor(500);//was 500
await page.waitFor('#inputEmail');
await page.type('#inputEmail', 'xxx@yyy');
await page.type('#inputPassword', '1111');
await page.click('button');//Login
await page.waitForNavigation();
await page.waitFor(100);//was 500
// SELECT COMPANY ON NEXT PAGE
await page.waitFor('#logn-screenv > form > div.row.logn-screenbody.pb-4.pt-3.px-2 > div:nth-child(2) > div > div > div.css-1hwfws3.custom-scrollbar__value-container > div.css-151xaom-placeholder.custom-scrollbar__placeholder');
await page.click('#logn-screenv > form > div.row.logn-screenbody.pb-4.pt-3.px-2 > div:nth-child(2) > div > div > div.css-1hwfws3.custom-scrollbar__value-container > div.css-151xaom-placeholder.custom-scrollbar__placeholder');//Login
// SELECT COMPANY
await page.waitFor(500);// was 1000
// click dropdown to show list of companies
await page.click('#react-select-2-option-2'); //Test company
await page.waitFor(300);//was 1000
// click list item to select company
await page.click('button[class="btn btn-block mt-3"]');
// now navigate to company page
})
test('url should be correct"', async () => {
expect.assertions(1);
const url = await page.url;
await assert(url === 'https://uat2.onplanapp.com/#/');
});
afterAll(async () => {
//await browser.close()
})
Сообщение об ошибке
onplan_jest@1.0.0 test F: \ Projects \ onplan_jest jest
FAIL ./login.test.js (6,165 с) × URL должен быть правильно "(2 мс)
● URL должен быть правильным"
Timeout - Async callback was not invoked within the 5000 ms timeout specified by jest.setTimeout.Error: Timeout - Async callback was not invoked within the 5000 ms timeout specified by jest.setTimeout.
at mapper (node_modules/jest-jasmine2/build/queueRunner.js:29:45)
● URL должен быть правильным "
TypeError: Cannot read property 'url' of undefined
43 |
44 | expect.assertions(1);
> 45 | const url = await page.url;
| ^
46 | await assert(url === 'https://uat2.onplanapp.com/#/');
47 | });
48 |
at Object.<anonymous> (login.test.js:45:28)
● URL должен быть правильным"
expect.assertions(1)
Expected one assertion to be called but received zero assertion calls.
42 | test('url should be correct"', async () => {
43 |
> 44 | expect.assertions(1);
| ^
45 | const url = await page.url;
46 | await assert(url === 'https://uat2.onplanapp.com/#/');
47 | });
at Object.<anonymous> (login.test.js:44:12)
Наборы тестов: 1 не удалось, всего 1 Тесты: 1 не удалось, всего 1 Снимки: 0 всего Время: 6,316 с, примерно 7 с Выполнены все наборы тестов. Jest не завершился через одну секунду после завершения теста.
Обычно это означает, что в ваших тестах есть асинхронные операции, которые не были остановлены. Рассмотрите возможность запуска Jest с --detectOpenHandles
, чтобы устранить эту проблему. Конец сообщения об ошибке