У меня есть угловое приложение среднего размера, и по некоторым причинам некоторые из моих тестов на транспортирщики выходят из строя, когда вы работаете против моей живой производственной среды.
Я уверен, что тайм-ауты происходят из-за того, что транспортир ждет какую-то асинхронную задачу. Я знаю о зонах, и я пытался сохранить все длительные задачи async из ngZone (согласно FAQ), но по какой-то причине транспортир по-прежнему отключается.
Возможно, я что-то пропустил, но не знаю, как отладить проблему. Есть ли способ узнать, какая часть обработчика кода ждет?
NgZone предоставляет только функции, чтобы определить, есть ли микротовары или макростаксы, но не сообщает мне, какой из них.
EDIT: типичный пример такой ошибки таймаута, как показано транспортиром:
Не удалось: время ожидания ожидания асинхронных угловых задач заканчивается через 11 секунд. Это может быть связано с тем, что текущая страница не является угловым приложением. Дополнительную информацию см. В FAQ: https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-for-angular
В ожидании элемента с локатором - Локатор: By (css selector, [data-e2e = 'scroll-to-offer]])
Элемент существует на странице (я проверил это вручную), но транспортир все еще не работает.