一、自動(dòng)化測試概念
1、概念
java:TestNg
python:unittest pytest
2、自動(dòng)化測試可行性
- 測試目的明確,需求不會(huì)頻繁的變更
- 對于項(xiàng)目的自動(dòng)化測試,要看項(xiàng)目的具體情況
- 一個(gè)產(chǎn)品需要在多個(gè)環(huán)境下部署
- 對于web GUI測試,需要測試用例在不同的瀏覽器上進(jìn)行兼容性測試
- 移動(dòng)端測試,同樣的測試用例需要在多個(gè)不同的android和ios執(zhí)行
- 對于一些企業(yè)級軟件,不同的企業(yè)他需要按照對應(yīng)的行業(yè)領(lǐng)域做定制化,但是各個(gè)定制版本的主題功能絕大多數(shù)是一致的,只是個(gè)別功能有輕微的差異
- 測試人員具備一定編程能力
二、selenium核心原理與機(jī)制
1、代碼分析
需求:
(1)打開Chrome瀏覽器,在地址欄中輸入百度的網(wǎng)址。
(2)在搜索輸入框中輸入關(guān)鍵詞“自動(dòng)化測試”并按Enter鍵。
(3)驗(yàn)證搜索結(jié)果頁面的標(biāo)題是否是“自動(dòng)化測試_百度搜索”。
注意:把dirver放到本地的文件夾后,一定要配置到環(huán)境變量中
2、Selenium 1. 0的工作原理
Selenium 1. 0,又稱SeleniumRC,其中RC是Remote Control的縮寫
Selenium RC服務(wù)器主要包括Seleniumcore,http proxy和launcher三部分
- selenium core,是被注入瀏覽器頁面中的js函數(shù)集合,用來實(shí)現(xiàn)界面元素的識別和操作
- HTTP Proxy,作為代理服務(wù)器修改js的源,以達(dá)到“欺騙”被測站點(diǎn)的目的
- Launcher,用來在啟動(dòng)測試瀏覽器時(shí)完成Selenium core的注入和瀏覽器代理的設(shè)置
3、Selenium 2. 0的工作原理
4、Selenium 3. 0的工作原理 2016
- 3. 0版本的API向下兼容2. 0
- JDK 環(huán)境需要升級到JDK 1.8或者以上。
- 移除了1. 0版本的RC,也就是說,Selenium 1. 0不再得到官方的支持。
- (2. 0版本的Firefox(不需要多帶帶下載驅(qū)動(dòng))3. 0官方提供了一個(gè)geckodriver,具體用法類似于 ChromeDriver.
- 官方開始支持微軟的(Edge)瀏覽器,但是需要下載對應(yīng)的 Driver(Microsoft Web Driver.exe).
- 官方支持的最低版本為(IE9)
三、selenium安裝
1、Selenium WebDriver
客戶端API接口,測試人員通過調(diào)用這些接口(WebDriver源碼),來訪問瀏覽器驅(qū)動(dòng),瀏覽器驅(qū)動(dòng)再訪問瀏覽器
2、Selenium IDE
官網(wǎng)地址:https://www.selenium.dev/
Selenium IDE是一個(gè)瀏覽器插件,支持chrome瀏覽器和Firefox瀏覽器,可以將手動(dòng)測試過程記錄下來,并生成自動(dòng)化測試腳本,可以實(shí)現(xiàn)回放。
使用方法
作用:以錄屏的方式幫助異地開發(fā)重現(xiàn)bug
3、Selenim Grid
1)可以解決什么問題?
- 當(dāng)web應(yīng)用需要進(jìn)行不同瀏覽器的兼容性測試時(shí),首先需要準(zhǔn)備很多機(jī)器或者模擬
機(jī),并安裝所需的不同測覽器。
- 當(dāng)web應(yīng)用需要進(jìn)行同一瀏覽器的不同版本的兼容性測試時(shí),同樣需要準(zhǔn)備很多安裝了同一瀏覽器的不同版本的測試執(zhí)行機(jī)器
- 在GUI自動(dòng)化測試用例的數(shù)量比較多的情況下,你不希望只用一臺測試執(zhí)行機(jī)器以串行的方式執(zhí)行測試用例,而希望可以用上所有可用的測試執(zhí)行機(jī)器,以并發(fā)的方式執(zhí)行測試用例
2)Selenium Grid架構(gòu)
四、Selenium開發(fā)環(huán)境搭建
1、安裝python
https://www.python.org/官網(wǎng)下載python
2、安裝pycharm
https://www.jetbrains.com/pycharm/download/#section=windows (使用社區(qū)版即可)
3、安裝selenium
- 離線安裝
下載指定的selenium版本;https://pypi.org/project/selenium/
解壓文件;
使用cmd進(jìn)入解壓目錄下執(zhí)行命令:python setup.py install
- 使用pip在線安裝:
pip installselenium
pip installselenium==指定版本號 如:pip install selenium==2.48.0
4、下載driver
- 如果不能科學(xué)上網(wǎng),推薦使用國內(nèi)鏡像:https://npm.taobao.org/mirrors/chromedriver/
- 配置driver的環(huán)境變量
五、元素定位基礎(chǔ)知識
.......
1、HTML
:
文檔的根元素,所有的描述都在這里
:
文檔頭信息,包含、