當前有部分端到端測試,輸入用戶名/密碼並單擊「登錄」。量角器e2e測試登錄重定向
它成功,但在「謝謝你已登錄」頁面結束,而不是重定向到「帳戶門戶」或「儀表板」,就像通過瀏覽器登錄一樣。 \
這個項目的新手,但我們使用OAuth。
主要問題:這聽起來像是需要http嘲弄嗎?
進一步瞭解詳細:
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);
});
});
如果我趕緊點擊測試窗口上,我可以看到它成功地達到了「成功」的頁面 - 但它不會重定向到儀表板(通過瀏覽器手動登錄時重定向)。我如何繼續此測試以保持登錄狀態並像用戶那樣訪問儀表板?
//項目新增,角度和量角器。
編輯 - 總結這一點:
- 我想量角器開始測試/登錄頁面上
- 量角器應該找到並填寫用戶名和密碼字段,然後單擊登錄
- 量角器成功登錄,看到一個/謝謝你頁面,然後立即重定向到用戶的/儀表板 pa ge
- 也許我錯過了一個步驟,我們是否需要在量角器測試中手動重定向?
(當用戶手動通過瀏覽器登錄時,他們看不到/三江源頁 - 。這是一個快速重定向到/儀表板量角器沒有達到儀表板頁面
當我從你的鏈接頁面上的解決方案運行的代碼 - 量角器說:「失敗:未定義是不是一個函數」。看起來它在'compareCurrentUrl'函數中失敗。我可以在這裏找到一個我如何使用函數的示例https://jsfiddle.net/s3tbfkwy/ – bruh