В настоящее время есть частичный сквозной тест, который вводит имя пользователя/пароль и нажимает "Зарегистрироваться".
Он делает это успешно, но заканчивается на странице "спасибо, что вы вошли в систему", вместо того, чтобы перенаправляться на "портал учетной записи" или "панель мониторинга", как это было бы, если бы я вошел в систему через браузер. \
Новый для этого проекта, но мы используем OAuth.
Основной вопрос: звучит ли это как потребность в http mocking?
Дополнительная информация:
spec.js
describe('login page', function() {
browser.driver.get('http://url.path/login');
it('should render login page', function() {
// Checking the current url
var currentUrl = browser.driver.getCurrentUrl();
expect(currentUrl).toMatch('/login');
});
it('should sign in', function() {
// Find page elements
var userNameField = browser.driver.findElement(By.id('username'));
var userPassField = browser.driver.findElement(By.id('password'));
var userLoginBtn = browser.driver.findElement(By.id('loginbtn'));
// Fill input fields
userNameField.sendKeys('[email protected]');
userPassField.sendKeys('1234');
// Ensure fields contain what we've entered
expect(userNameField.getAttribute('value')).toEqual('[email protected]');
expect(userPassField.getAttribute('value')).toEqual('1234');
// Click to sign in - waiting for Angular as it is manually bootstrapped.
userLoginBtn.click().then(function() {
browser.waitForAngular();
expect(browser.driver.getCurrentUrl()).toMatch('/success');
}, 10000);
});
});
Если я быстро нажму на окно тестирования, я увижу, что он успешно дошел до страницы успеха, но он не перенаправляется на панель управления (она перенаправляется при входе в систему через браузер). Как я могу продолжить этот тест, чтобы он оставался подписанным и доступ к панели мониторинга, как пользователь?
//Новое в проекте, angular и и транспортир.
РЕДАКТИРОВАТЬ - немного подытожив это:
- Я хотел бы, чтобы транспортир начал тесты на странице /login
- Транспортир должен найти и заполнить поля имени пользователя и пароля, затем нажмите "Вход"
- Транспортир успешно войдет в систему, чтобы увидеть страницу /thankyou, а затем сразу же перенаправляется на страницу пользователя/приборной панели.
- Возможно, мне не хватает шага, нужно ли нам вручную перенаправлять тесты Protractor?
(Когда пользователь вручную регистрируется в браузере, они не видят страницу /thankyou - это быстрая переадресация на/приборную панель. Транспортир не достигает страницы панели мониторинга.