2017-10-14 125 views
0

我使用webdriverio v4和薛寶釵到值輸入到登錄表單的網址,點擊登錄按鈕並確認導航到URL:驗證導航使用Webdriverio和柴

describe('login form', function() { 
    it('should allow access with correct credentials', function() { 
     LoginPage.open(); 
     LoginPage.username.setValue('name'); 
     LoginPage.companyCode.setValue('100'); 
     LoginPage.password.setValue('password'); 
     LoginPage.loginButton.click(); 

     expect(browser.getUrl()).to.equal('URL path'); 
    });  
}); 

中輸入的值成功並且期望的URL被導航到。但是,bro​​wser.getURL()返回的是基本URL而不是新的URL?

我在做什麼錯?

回答

1

URL可能檢索得太快。在獲取URL之前,您可能必須等到頁面加載新頁面。

可以使用類似waitUntil的東西,並檢查回調中的URL。像這樣:

browser.waitUtil(function() { 
    return browser.getUrl() === urlToCheck; 
}, 5000); 

參見:http://webdriver.io/api/utility/waitUntil.html