Событие прокрутки TestCafe не срабатывает - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь написать функциональный тест, чтобы проверить, существует ли ссылка и массив элементов, что ссылка открывается успешно.

Я застреваю в первых нескольких шагах теста.

"testcafe": узел "^ 0.22.0" v8.11.2 работает в Chrome

Яиспользуя клиентскую функцию для обработки прокрутки во время теста:

import { Selector, ClientFunction } from 'testcafe';

const scrollTo = ClientFunction(top => {
     window.scrollTo(0, top);
     window.dispatchEvent(new Event('scroll'))
});

fixture(`Given user is in fund story chapter 4 for symbol GOBAX`)
     .page(`http://localhost:8080/#/fund-story/gobax/5`);

test(`User verifies that the ESG report link in the tooltip of each Top Holdings ESG Scores datapoint, opens successfully`, async testController => {
     const section = Selector('#section-esg-top-holdings');
     const top = await section.offsetTop;
     await scrollTo(top);
     await testController.wait(3000);
})

На странице существует раздел, и клиентская функция успешно прокручивает элемент.Я даже пытался принудительно отправить событие, но обратный вызов в компоненте не сработал.Обратный вызов в компоненте для события прокрутки окна запускает больше элементов для отображения на странице после выполнения некоторых вычислений, чтобы убедиться, что раздел находится в поле зрения.

Если я использую window.scrollTo (0, top);где top = y позиция раздела, внутри инструментов разработчика Chrome, событие инициируется и дополнительные элементы отображаются.

Это ошибка testCafe или я пропустил что-то в тесте, которое успешно вызвало бысобытие?

1 Ответ

0 голосов
/ 09 апреля 2019

Я думаю, что TestCafe может некорректно симулировать события прокрутки для вашей страницы.Поскольку @AlexKamaev не воспроизвел проблему, создайте новый отчет об ошибке и предоставьте страницу, которую можно использовать для ее воспроизведения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...