У меня есть код транспортира, написанный Жасмином, который должен войти в систему пользователя. К сожалению, перенаправление происходит после перехода к корневому URL-адресу, который занимает довольно много времени (около 5 секунд), и я не могу заставить транспортир ждать его. Я уже пробовал browser.wait
, я пытался использовать обещания, я пробовал с this blogpost, но ничего не сделал. Он все еще не ждет. Страница входа - это страница с сервера Keycloak, поэтому я использую driver.findElement
вместо element
. Вот мой текущий код:Транспортир не ждет перенаправления
describe('my app', function() {
it('login', function() {
var driver = browser.driver;
browser.get('/');
console.log('get');
driver.findElement(by.id('username')).isPresent().then(function() {
console.log('waited');
driver.findElement(by.id('username')).sendKeys("test");
driver.findElement(by.id('password')).sendKeys("test");
driver.findElement(by.id('kc-login')).click();
driver.findElement(by.css('.page-header')).isPresent().then(function() {
console.log('ok');
expect(browser.getLocationAbsUrl()).toMatch("/test");
});
});
});
});
Вы знаете, что я могу сделать, чтобы заставить его работать? Я начал транспортир проект с этим семенем: https://github.com/angular/angular-seed