使用斷言時報錯:java.lang.AssertionError: expected [true] but found [false]

package cn.pagefactory.loginpage;web

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.PageFactory;ui

public class Loginpage {
String url="https://en.mail.qq.com/cgi-bin/loginpage";
public WebDriver driver;
@FindBy(id="u")
public WebElement Username;
@FindBy(id="p")
public WebElement Password;
@FindBy(id="login_button")
public WebElement loginbutton;
@FindBy(id="login_frame")
public WebElement loginframe;

public Loginpage(){
System.setProperty("webdriver.firefox.bin", "D:\\Firefox\\installpath\\firefox.exe");
driver=new FirefoxDriver();


PageFactory.initElements(driver,this);
}
public void load(){
driver.get(url);
}
public void quit(){
driver.quit();
}
/* public WebDriver getDriver(){
return driver;
}*/
public void login(){

driver.switchTo().frame(loginframe);
Username.sendKeys("XXXXXX");
Password.sendKeys("XXXXXXX");
loginbutton.click();
}
}this

 

package cn.pagefactory.testqqmail;url

 

import org.testng.Assert;
import org.testng.annotations.Test;firefox

import cn.pagefactory.loginpage.Loginpage;資源

public class testqqmail {
@Test
public void testqqmail(){
Loginpage loginpage=new Loginpage();
loginpage.load();
loginpage.login();
Assert.assertTrue(loginpage.driver.getPageSource().contains("收件箱"));
}
}get

 

解決方案:因爲沒有加等待時間,因此致使沒有獲取到頁面所含資源,加一個等待時間就解決了selenium

修改後的代碼:it

public class testqqmail {
@Test
public void testqqmail() throws InterruptedException{
Loginpage loginpage=new Loginpage();
loginpage.load();
loginpage.login();
Thread.sleep(5000);
Assert.assertTrue(loginpage.driver.getPageSource().contains("收件箱"));
}
}io

相關文章
相關標籤/搜索