Maven+testng+yaml:Selenium Page Object模式實現(xiàn)

第一篇、搭建selenium開發(fā)環(huán)境

1、準備相關(guān)的Java環(huán)境

下載jdk 1.8

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Java SE Development Kit 8u121

下勾選:Accept License Agreement

筆者是64位windows環(huán)境:選擇如圖版本下載安裝

2、配置環(huán)境變量

參考:http://jingyan.baidu.com/article/9f63fb91d87fb0c8400f0e93.html

3、準備自己的開發(fā)ide

筆者使用的intellij ide所以在這里介紹的都是這種工具,對于使用eclipse的童鞋說聲抱歉了

選擇File》New Project》Maven,填寫好相關(guān)信息

創(chuàng)建maven工程OK。

第二篇:配置工程pom文件,下載相關(guān)依賴

筆者使用到selenium和testng相關(guān)資源和yaml解析包(后續(xù)介紹如何使用),pom配置如下:

第三篇:Page Object模式實現(xiàn)測試代碼封裝

說起page object模式最大的優(yōu)勢在于使代碼更易懂,后期維護更加方便

以下以網(wǎng)易云音樂web版本為例進行講解

工程整體架構(gòu):

1、元素定位信息存儲在yaml配置文件中,實現(xiàn)無需代碼重新編譯應(yīng)對頁面變更引起的元素定位方式的變動,/resources/locator目錄下:

2、要啟動的瀏覽器,baseurl,數(shù)據(jù)庫等配置信息存放在/resources/config目錄下:

3、對于yaml文件的解析和selenium基本方法的封裝分別在ParseYamlUntil和WebDriverUntil兩個類中完成,有些童鞋習(xí)慣用BasePage類來實現(xiàn)WebDriverUntil類的功能也是可以的,看個人喜好,實際作用相同。

4、基本條件已經(jīng)完成,開始page objcet的實現(xiàn),以HomePage為例:

* 借助面向?qū)ο蟮乃枷?,頁面即類,頁面類中包含頁面的屬性和方?/p>

* 屬性即頁面元素,方法即頁面元素的相關(guān)動作

第四篇:測試方法實現(xiàn)

完成了對HomePage和SearchResultPage的封裝之后,結(jié)合testng實現(xiàn)測試方法

package play;

import org.testng.annotations.Test;

import pages.HomePage;

import pages.SearchResultPage;

public class TestPlayMusic {

@Test(description="搜索wild wild web歌曲并播放!")

public voidtestSearchAndPlayMusic(){

HomePage.cleanSearchInput();

HomePage.inputSearchContent("wild wild web");

HomePage.doSearchAction();

SearchResultPage.handleIFrame();

SearchResultPage.doPlayAction();

}

}

可見,測試方法中直接調(diào)用的都是page中的方法,組合而成,簡單易懂!

第五篇:運行測試

在工程目錄下創(chuàng)建xml文件夾用于管理testng的配置文件,在xml下創(chuàng)建test.xml:

右鍵選擇Run,運行測試看看吧。

第六篇:持續(xù)集成CI

下載并啟動tomcat,把下載的Jenkins的war包放在tomcat的webapp目錄下,啟動tomcat服務(wù),打開瀏覽器,訪問:localhost:8080/jenkins

新建:maven項目,配置好源碼管理


配置post step:


保存配置,在工程管理頁面點擊立即構(gòu)建查看自己的成果吧

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容