Кипарис подожди алиаса.
аюсь создать несколько базовых тестов, чтобы опробовать новыйкипарис библиотека. В моем тесте у меня естьcy.visit('http://mywebsite.com');
который загружает приложение AngularJS, которое использует SystemJS.
Если я правильно понимаю Cypress, мне не нужно больше ничего делать, и он убедится, что страница загружена, прежде чем запускать что-либо еще. Однако это, похоже, не работает, потому что страница загружена, но SystemJS все еще загружает модули.
Как я могу заставить Cypress ждать загрузки всех модулей SystemJS, прежде чем запускать больше тестов без использованияcy.wait(5000)
?
РЕДАКТИРОВАТЬ
Благодаря Двелле, это решение, которое работает для меня. Я заворачиваю исходный System.import в обещание, которое разрешается после загрузки приложения AngularJS.
window.APP_READY = new Promise(function(resolve, reject) {
System.import('app').then(function(app) {
angular.element(document).ready(function() {
angular.bootstrap(document, ['app']);
resolve();
});
});
});
А потом в тесте
cy.visit('http://mywebsite.com').its('APP_READY');