網(wǎng)站建設(shè)必須經(jīng)歷的過(guò)程品牌推廣手段
1.Page Object是Selenium自動(dòng)化測(cè)試項(xiàng)目開(kāi)發(fā)實(shí)踐的最佳設(shè)計(jì)模式之一,通過(guò)對(duì)界面元素的封裝減少冗余代碼,同時(shí)在后期維護(hù)中,若元素定位發(fā)生變化,只需要調(diào)整頁(yè)面元素封裝的代碼,提高測(cè)試用例的可維護(hù)性。
PageObject設(shè)計(jì)模式:是將某個(gè)頁(yè)面的所有"元素(包含控件)屬性"及"元素操作"封裝在1個(gè)類(Class)里面。
2.以我們公司的登錄頁(yè)面為例講解pom模式:
pom的模式就是測(cè)試代碼和元素定位的分離,保證在元素定位發(fā)生改變的時(shí)候,不會(huì)再去更改測(cè)試代碼,實(shí)現(xiàn)測(cè)試代碼和頁(yè)面元素的分離。
3.元素定位代碼:
package com.rrx.test;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
public class TestLoginPage {
//登錄名
@FindBy(xpath=“.//[@id=‘username’]“)
WebElement userName;
//密碼
@FindBy(xpath=”.//[@id=‘password’]”)
WebElement password;
//登錄按鈕
@FindBy(xpath=“.//*[@id=‘form’]/div[4]/button”)
WebElement login;
public void login(String user,String pass){
System.out.println(user);
userName.sendKeys(user);
password.sendKeys(pass);
login.click();
}
}
4.測(cè)試代碼:
package com.rrx.test;
import java.io.IOException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.PageFactory;
import org.testng.Assert;
import org.testng.Reporter;
import org.testng.annotations.Test;
import com.rrx.framework.BorwserEngin;
import com.rrx.framework.Logger;
public class NewTest {
@Test
public void f() throws IOException, InterruptedException {
BorwserEngin borwser=new BorwserEngin();
Reporter.log(“我在打印日志”);
WebDriver driver = borwser.getDriver();
TestLoginPage page=PageFactory.initElements(driver, TestLoginPage.class);
page.login(“hexin001”,“Test123456”);
Reporter.log(“我退出瀏覽器了”);
Thread.sleep(3000);
Logger.getLogger().info(“退出”);
// borwser.tearDown();
}
}
最后:下方這份完整的【自動(dòng)化測(cè)試】視頻學(xué)習(xí)教程已經(jīng)整理上傳完成,朋友們?nèi)绻枰梢宰孕忻赓M(fèi)領(lǐng)取 【保證100%免費(fèi)】