python測試系列教程——python+Selenium自動化測試架構__python

來源:互聯網
上載者:User

全棧工程師開發手冊 (作者:欒鵬)

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,然後再右鍵點擊項目根目錄->根源。這樣就能引用項目根目錄下的所有自訂模組了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.