我有一個在GitHub上使用oAuth SSO進行身份驗證的AngularJS應用程序。我正在嘗試找出使用量角器並自動執行登錄測試的方法。我無法弄清楚如何檢索非象角,以及如何管理wait'ing的頁面與browser.driver
加載,我的規格如下所示:使用量角器在非AngularJS頁面上測試登錄頁面
// Create a repository
describe('login', function() {
it('should login', function() {
// this issues a redirect to GitHub
browser.driver.get(process.env.HOST + '/auth/github')
browser.sleep(4000); // Sleep to make sure page loads fully..
// browser.debugger(); // tried to use debugger...
var login = element(by.id("login_field"));
login.sendKeys(process.env.USERNAME);
var password = element(by.id("password"));
password.sendKeys(process.env.PASSWORD)
});
});
我像這樣運行命令:
HOST=http://someserver.com.dev USERNAME=foobar PASSWORD=barfoo protractor config/protractor.conf
如何正確加載認證頁面,在字段中輸入正確的信息,然後等待重定向回到我的Angularized應用程序(我可以從那裏處理事情)。
我試着用調試器跳到這段代碼中,但這對我來說並不直觀。當調試器被阻塞時,我似乎沒有在我的代碼中,但在cli.js中。如果我點擊'c',那麼我的腳本將一路繼續執行並失敗而不會進一步阻止。我誤解我的腳本中使用調試器命令的位置?而且,從Chrome檢查員,我希望使用window.clientSideScripts.findInputs
,但也在那裏受挫;這些似乎是針對AngularJS元素的,而不是未被角色化的元素。
時,在量角器2.1.0中,waitReady功能沒有被定義.. – Tony
你需要把一個片段中,默認情況下不內置量角器。摘錄https://gist.github.com/elgalu/2939aad2b2e31418c1bb –
感謝您的回覆。我看到這個「添加'require('./ waitReady.js');'在你的onPrepare塊或文件中。」在鏈接中。這是否意味着我需要使用RequireJS來需要片段? – Tony