1. 程式人生 > >【Selenium】使用selenium進行自動化測試(中)

【Selenium】使用selenium進行自動化測試(中)

1.元素定位與操作

查詢元素方法:

driver.findElement(By arg0);

其中寫用來定位的API,常見用來定位的API有六種,接下來一一介紹:

1.1 By.id

根據id來獲取元素,返回單個元素,因為id值一般是唯一的。

//獲得id=kw的標籤並且賦值給input變數
WebElement input=driver.findElement(By.id("kw"));

根據元素的name屬性來獲得元素,所以可能返回元素集合

WebElement input=driver.findElement(By.name("kw"));

1.3 By.tagName

根據標籤名來獲取元素,可能返回一個元素集合

List<WebElement> list =driver.findElements(By.tagName("input"));
//得到第八個元素
list.get(7); 

1.4 By.className

根據元素的樣式class來獲取元素,可能返回一個元素集合

List<WebElement> list =driver.findElements(By.className("input"));
list.get(7);  

1.4 By.LinkText

根據超連結的文字值來獲取元素

//根據完整文字內容
//WebElement element=driver.findElement(By.linkText("新聞"));
//根據部分文字內容定位
WebElement element1=driver.findElement(By.partialLinkText("新"));
element1.click();

1.5 By.cssSelector

  1. 通過標籤名稱和其className進行查詢
//傳入標籤名及樣式查詢
WebElement element=driver.findElement(By.cssSelector("input.s_input"));
element.sendKeys("你好");
  1. 通過標籤名和任意一個屬性值進行查詢
WebElement element=driver.findElement(By.cssSelector("input[autocomplete='off']"));
element.sendKeys("你好");

1.6 By.xpath

通過絕對路徑查詢元素,比較麻煩,很少用。

2.web自動化框架前瞻

2.1 框架的定義

指為解決一個開放性問題而設計的具有一定約束性的支撐結構。在此結構上可以根據具體問題擴充套件、安插更多的組成部分,從而更迅速和方便的構建完整的解決問題的方案。

2.2 Maven

是一個專案構建工具。 是目前大部分企業在做專案時首選的專案構建、管理工具。 特點:

  1. 可以使用maven來編譯你的程式碼
  2. 專案打包可以使用maven來完成
  3. maven可以實現專案模組化管理
  4. maven可以線上管理已拉起,專案以來也很多方便獲取
  5. maven提供了一些豐富的外掛,方便專案持續整合

高版本的eclipse一般都整合有maven,我這裡以我的eclipse為例(我的eclipse Version: Mars.1 Release (4.5.1)),介紹檢視方式: 在這裡插入圖片描述 如果能夠檢視到,則說明已經集成了maven。

2.2.1 建立一個maven project

在這裡插入圖片描述 在這裡插入圖片描述 新建完成後如下圖所示: 在這裡插入圖片描述 我的專案報錯是因為沒有新增對應的jar包,在maven框架中,我們所需的jar包能夠在下面這個網站中進行下載: http://mvnrepository.com/ 我這裡要使用兩個jar包:

  1. selenium-java 是一個用於web 應用程式測試的工具,直接執行在瀏覽器中。
  2. Testng 下一代測試技術。

這裡我們去下載seleniu java,在搜尋框中輸入selenium java,選擇對應的包,然後進入此頁面。 在這裡插入圖片描述 然後我們選擇熱度最高的2.53.1版本 在這裡插入圖片描述 點選2.53.1後,進行以下操作: 在這裡插入圖片描述

<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>2.53.1</version>
</dependency>

拷出來是這個樣子的,我們將上面的網址刪掉,只要下面幾行。

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>2.53.1</version>
</dependency>

然後開啟這個檔案: 在這裡插入圖片描述 在這裡插入圖片描述