2014-07-16 17 views
1

在Selenium中:啓動一個網站後,我們如何檢查是否啓動了正確的頁面。Selenium:啓動一個網站後,我們如何檢查是否啓動了正確的頁面

例如: 如果我想啓動www.google.com,運行代碼後我該如何檢查是否啓動了相同的頁面。

我用,

Assert.assertEquals("Correct web page",driver.findElement(By.Xpath("<xpath of one of the element in the page>")).isDisplayed()); 

運行程序後,我得到了以下錯誤:

Exception in thread "main" java.lang.AssertionError: expected:<Correct web page> but was:<true> 
+1

提供的URL作爲參數,並在頁面加載斷言之後的'司機。 getCUrrentUrl()'等於你最初提供的URL。 –

回答

1

有很多方法可以斷言用於加載正確的頁面,最常用的是正確的斷言加載的網址和頁面標題。

斷言爲正確的網址加載:

String expectedUrl = "https://www.google.com"; 
WebDriver driver = new FirefoxDriver(); 
driver.get(expectedUrl); 
try{ 
    Assert.assertEquals(expectedUrl, driver.getCurrentUrl()); 
    System.out.println("Navigated to correct webpage"); 
} 
catch(Throwable pageNavigationError){ 
    System.out.println("Didn't navigate to correct webpage"); 
} 

斷言的頁面標題:

String expectedTitle = "Google"; 
String expectedUrl = "https://www.google.com"; 
WebDriver driver = new FirefoxDriver(); 
driver.get(expectedUrl); 
try{ 
    Assert.assertEquals(expectedTitle, driver.getTitle()); 
    System.out.println("Navigated to correct webpage"); 
} 
catch(Throwable pageNavigationError){ 
    System.out.println("Didn't navigate to correct webpage"); 
} 
+0

只是爲了確認實際是否與預期相同,除非我們使用println語句,否則我們不會在控制檯中看到任何東西。這是正確的嗎? – user3702778

+0

我們可以爲這兩種情況提供打印聲明。看到我編輯的回覆。 –

+0

非常感謝! – user3702778

相關問題