編寫Selenium測試用例就是模擬用戶在瀏覽器上的一系列操作,通過腳本來完成自動化測試。
編寫測試用例的優勢:
開源,免費。
支持多種瀏覽器 IE,Firefox,Chrome,Safari。
支持多平臺 Windows,Linux,Mac。
支持多語言 Python,Java,C#。
對 Web 支持良好。
簡單,靈活。
支持分布式測試用例執行。
引入依賴
引入依賴是為了調用 webdriver 中的方法來與瀏覽器進行交互以實現操作步驟。
Python版本
from selenium import webdriver
- Java版本
import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;
測試用例的流程
測試用例是為了實施測試從而向被測試的系統提供的一組集合,這組集合包含:測試環境、操作步驟、測試數據、預期結果等。
注意:一條測試用例的最終結果只有一個:成功或者失敗。
三大核心要素為 :標題 、步驟 、預期結果
標題:是對測試用例的描述,標題應該清楚的表達測試用例的內容
步驟:對測試執行過程進行描述
預期結果:提供測試執行的預期結果,預期結果一般是根據需求得出,如果實際結果和預期結果一致則測試通過,反之失敗。
實戰演練
首先是在代碼的最上面導入了 Selenium 的包,其次是測試方法命名、測試步驟、斷言。測試用例內容是要斷言打開百度頁面所展現的內容與所期望的值是否相等。
Python版本
from selenium import webdriver# 測試的標題即 test_search
def test_search():driver = webdriver.Chrome()# 測試的步驟driver.get('https://www.baidu.com')search = driver.find_element_by_id('su').get_attribute('value')# 斷言預期結果assert search == "百度"
- Java版本
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;
public class webTest {private ChromeDriver driver;@Testvoid search() throws InterruptedException {//實例化driverdriver = new ChromeDriver();//打開網頁driver.get("https://www.baidu.com");//測試的步驟String data = driver.findElement(By.id("su")).getAttribute("value");assert data.equals("百度");}
}
這里要斷言打開百度頁面所展現的內容與所期望的值是否相等。因為實際獲取到的內容應該是百度一下而不是百度,所以斷言錯誤。
FAILED [100%]
test_demo.py:3 (test_search)
百度一下 != 百度Expected :百度
Actual :百度一下
<Click to see difference>def test_search():driver = webdriver.Chrome()driver.get('https://www.baidu.com')search = driver.find_element_by_id('su').get_attribute('value')
> assert search == "百度"
E AssertionError: assert '百度一下' == '百度'
test_demo.py:9: AssertionError
跟著實戰演練,開啟編寫Selenium測試用例之旅吧~
最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:【文末領取】
? ? ?【下面是我整理的2023年最全的軟件測試工程師學習知識架構體系圖+全套資料】
一、Python編程入門到精通
二、接口自動化項目實戰??
三、Web自動化項目實戰

四、App自動化項目實戰??
五、一線大廠簡歷

六、測試開發DevOps體系??
七、常用自動化測試工具
八、JMeter性能測試??
九、總結(文末尾部小驚喜)
生命不息,奮斗不止。每一份努力都不會被辜負,只要堅持不懈,終究會有回報。珍惜時間,追求夢想。不忘初心,砥礪前行。你的未來,由你掌握!
生命短暫,時間寶貴,我們無法預知未來會發生什么,但我們可以掌握當下。珍惜每一天,努力奮斗,讓自己變得更加強大和優秀。堅定信念,執著追求,成功終將屬于你!
只有不斷地挑戰自己,才能不斷地超越自己。堅持追求夢想,勇敢前行,你就會發現奮斗的過程是如此美好而值得。相信自己,你一定可以做到!?