全棧工程師開發手冊 (作者:欒鵬)
python教程全解 需要的環境 瀏覽器(Firefox/Chrome/IE..) Python Selenium Selenium IDE(如果用Firefox) FireBug、FirePath(如果用Firefox) chromedriver、IEDriverServer、phantomjs.exe IDE(Pycharm/Sublime/Eclipse..)
1、瀏覽器建議用Firefox或Chrome,千萬不要用最新版本,要用早兩到三個版本的。
2、Python不要使用python2,而使用python3。
3、Selenium安裝使用命令pip install selenium
4、Selenium IDE可以錄製回放,只能應用與Firefox瀏覽器。作為Firefox外掛程式外掛程式而存在。
5、如果要使用Firefox,必備的外掛程式就是FireBug和FirePath,這倆都可以在附加組件管理器中搜到。
6、果需要使用Chrome瀏覽器或者IE瀏覽器,則需要對應的驅動,下載連結如下:
chromedriver,chromedriver沒有64位版本,32即可驅動:
http://chromedriver.storage.googleapis.com/index.html
IEDriverServer,下面連結能夠下載所有版本的selenium以及IEDriverServer,IEDriverServer區分32位/64位:
http://selenium-release.storage.googleapis.com/index.html
選擇合適的版本並下載即可。
找個容易找到的檔案夾放起來,在啟動chrome瀏覽器以及IE時需要用到。
注意:chromedriver、IEDriverServer等瀏覽器測試驅動都是調用系統的Google瀏覽器和IE瀏覽器,所以驅動和瀏覽器用戶端必須相互匹配(而最新的測試驅動往往比最新的瀏覽器差了好幾個版本)。所以在下載驅動時盡量下載最新的,在下載瀏覽器時要盡量使用舊一點的版本。 Selenium Webdriver下載連結
| 模組名稱 |
模組描述 |
Selenium Webdriver下載連結 |
| Selenium Standalone Server 3.0 |
這是Selenium Webdriver的最新穩定版本。你要執行remote Selenium Webdriver時需要它。同時,注意Selenium 3.0+不再支援RC API。你應該用一個備用介面來啟動那些舊的東西 |
Selenium Webdriver 3.0下載(穩定版本) |
| Selenium Java 包(3.0.1)、Selenium Python 包(3.0.0) |
這些包包括了一系列的擴充Selenium功能的庫 |
Selenium Java 包 3.0.1(穩定版本)、Selenium Python 包 3.0.0(穩定版本) |
| IE Server Driver(2.53.1) |
如果你想要啟動IE來做網頁測試,你必須有這兩個驅動之一。根據你的系統架構來選擇。 |
32-位 IE Server Driver(穩定版本)、64-位 IE Server Driver(穩定版本) |
| GECKO Driver(最新版) |
這個驅動是用來支援新版本的Firefox瀏覽器,從這裡下載最新版 |
Mozilla GECKO Driver(穩定版本) |
| Google Chrome Driver(最新版) |
從這裡下載最新版本的Google Chrome驅動 |
Google Chrome Driver(穩定版本) |
YAML檔案文法
YAML 是專門用來寫設定檔的語言,非常簡潔和強大,遠比 JSON 格式方便。它的文法規則可以參考:http://blog.csdn.net/luanpeng825485697/article/details/79478338 GIitHub託管
自動化測試的架構代碼託管在github上,讀者可以自行下載
https://github.com/626626cdllp/Test/tree/master/Test_framework 自動化測試架構
在這個自動化測試架構中。
在config目錄中存放的是測試組態相關的檔案,設定檔可以使用ini、xml、yml等檔案類型。例如,要測試的網址、調試日誌的檔案名稱、日誌的輸出格式等
在data目錄中存放的是需要測試的資料。可以使用xmls、xml等檔案類型。例如,測試網址中要提交的各種各樣的內容。
在drivers目錄中存放的是測試需要用到的瀏覽器驅動。主要為chromedriver.exe、IEDriverServer.exe、phantomjs.exe
在log目錄下存放輸出日誌.log檔案。
在report目錄下存放測試報告檔案html類的檔案。
在test目錄下存放所有測試相關的檔案。
– 在test/case目錄下,用於存放測試案例。
– 在test/common目錄下,用於存放跟項目、頁面無關的封裝。
– 在test/interface目錄下,用於存放以前台角色測試後台介面的測試案例。
– 在test/page目錄下,用於存放具體頁面測試時的重複性過程。
– 在test/suite目錄下,用於存放測試套件,用來組織用例。
在utils目錄下存放公用方法。
– utils/assertion.py檔案用於添加各種自訂的斷言(測試結果和目標結果是否一致的判斷),宣告失敗拋出AssertionError就OK。
– utils/client.py檔案用於測試web後台介面的前端client,對於HTTP介面添加HTTPClient,發送http請求。還可以封裝TCPClient,用來進行tcp連結,測試socket介面等等。
– utils/config.py檔案用於項目公用內容配置,以及讀取設定檔中的配置。這裡設定檔用的yaml,也可用其他如XML,INI等,需在file_reader中添加相應的Reader進行處理。
– utils/extractor.py檔案用於抽取器,從響應結果中抽取部分資料,這裡實現的是json返回資料的抽取,可以自己添加XML格式、一般字元串格式、Header的抽取器
– utils/file_reader.py檔案用於檔案的讀取,包含設定檔和資料檔案的讀取函數.根據檔案地址,返迴文件中包含的內容
– utils/generator.py檔案用於一些產生器方法,產生隨機數,手機號,以及連續數字等,以便使用這些資料進行測試
– utils/HTMLTestRunner.py是一個第三方模組,用於產生html的測試報告。讀者可以不改動它。
– utils/log.py檔案通過讀取設定檔,定義記錄層級、記錄檔名、日誌格式等。
– utils/mail.py檔案用來給指定使用者發送郵件。可指定多個收件者,可帶附件。
– utils/support.py檔案用來編寫一些支援方法,比如簽名、加密等 相關提示:
pycharm中如果無法引入自訂模組,要先在pycharm中右鍵點擊項目根目錄->標記目錄為Resource Root,然後再右鍵點擊項目根目錄->根源。這樣就能引用項目根目錄下的所有自訂模組了。