自動化測試selenium教程


什么是自動化測試:

自動幫我們測試一個系統里面的主要功能,一個app、電腦網站、網頁,每個系里面許多的功能,好比一個淘寶頁面,里面N多功能,登錄、注冊,推薦,商品詳情、評論等等;
軟件生命周期:需求調研-》需求分析評審-》軟件架構設計-》編碼-》單元測試-》集成測試-》系統測試-》預發布系統測試-》上線;
后續不斷的迭代更新,在更新的時候,又不能避免增加或者刪除代碼,從而有可能影響原先已經上線的功能,好比原先開發了一個登陸功能,后續產品更新,增加了記住密碼自動登錄的功能,所以就影響了舊的功能,需要測試人員進行驗證對應的功能是否正常,沒問題后才發送到線上。

  

這是一個點,如果更改的功能模塊少,那手工驗證對應的功能即可,但是通常一個系統少則幾十個核心功能,多則幾千幾萬個。例如下面的淘寶首頁

 

 

如果每次更新都要人工驗證核心功能,這無疑浪費了大量的時間和人力成本,所以自動化測試就出來了,可以大量的減少原先的人工測試的工作量。

 自動化測試主要是接口測試和功能測試,兩着有交集,主要的是功能自動化測試,因為接口提供的數據,主要是為功能服務的,所以一般是功能自動化測試優先; 主流的功能自動化測試工具是 selenium+python ,雙劍合璧。

 

Selenium介紹:是一個用於Web應用程序測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。這個工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應用程序看是否能夠很好得工作在不同瀏覽器和操作系統之上。測試系統功能——創建回歸測試檢驗軟件功能和用戶需求。支持自動錄制動作和自動生成 .Net、Java、Perl等不同語言的測試腳本

 

一句話概括:就是通過程序去模擬人的行為從而去驗證對應的功能,是不是很高大上? 

 

最簡單的例子就是在小D課堂官網里面,通過編寫python腳本,你可以完成打開瀏覽器,輸入對應的站點,自動幫你登錄賬戶密碼,查找對應的視頻,進入視頻詳情頁,完成下單這一系列流程。 拓展下思維,哈哈,是不是可以完成自動搶票或者你們大學時候的搶課功能?

 

自動化測試應該怎么學呢?

首先,你需要有簡單的編程基礎,好比知道html/css/js/http這些基礎,然后懂點Python就可以啦;

啊哈?沒這些基礎?也沒關系,聯系小D課堂的客服小姐姐她會給你的基礎學習資料的

有基礎后,你需要這樣去學習自動化測試,下面就是大招了

 

1、首先你需要知道什么時候需要用到自動化測試和什么時候用手工測試,自動化測試不能完全替換手工測試。

2、安裝對應的自動化測試環境,python3 + selenium3 + 瀏覽器驅動(推薦使用火狐瀏覽器)

3、掌握下面selenium八種定位網頁元素的技巧

find_element_by_id,find_element_by_name,

find_element_by_class_name,

find_element_by_tag_name(),find_element_by_link_text(),

find_element_by_partial_link_text()

 

核心定位技巧:find_element_by_css_selector()、find_element_by_xpath()

4、使用selenium里面的ActionChains模擬用戶的行為,模擬鼠標操作才能進行的情況,比如單擊、雙擊、點擊鼠標右鍵、拖拽

5、上面的掌握后,最好有個小的實戰,小D課堂官網為例:編寫腳本完成下面的功能

 查找登錄框-》輸入用戶名和密碼-》觸發登錄-》判斷登錄是否成功-》打印結果

6、過后需要掌握為什么需要 等待時間--》等系統穩定,網頁需要加載對應的資源文件,頁面渲染,窗口處理等等

7、除了定位還有多種需要掌握的,比如單選框,alert、confirm彈窗處理

8、一般網站肯定需要登錄,所有還需要掌握怎么操作cookie去操作需要登錄的接口

9、登錄一般有驗證碼,這個有應該怎么處理呢?破解驗證碼?還是有辦法繞過驗證碼?

10、單元測試框架unittest是自動化測試里面必不可少的,多個測試用例同時進行測試

11、測試報告又是做啥的,怎樣自動生成測試HTML測試報告呢,HTMLTestRunner的使用

12、自動化測試完成后,我們又應該怎么告訴別人測試的情況嗯? 自動化發送測試報告郵件就可以解決這個問題

 

 

想要了解更多自動化測試selenium的知識,可以前往https://xdclass.net/#/coursecatalogue?video_id=16 進行學習

https://ke.qq.com/course/339111


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM