Python自動化測試怎麼學?軟體測試進階Python自動化,收藏這篇文章就夠了
前言
有很多從事基礎功能測試的測試人,想要通過學習Python自動化的形式提升自己在軟體測試行業的競爭力,但是很多人不知道自動化測試如何去學習,今天我就總結出了這篇文章,給大家制定Python自動化測試的學習路線。
第一步:學習Python程式設計基礎
python程式設計是最最基礎的,如果你想學會自動化測試,那麼python語法就必須會了。我們可以分為四個階段來學習Python。
- 階段一:基礎語法、基本資料型別
- 階段二: 函式、檔案操作、異常處理
- 階段三:初識類和物件
- 階段四: 類和物件應用-openpyxl、logging、unittest、ddt
第二步:WebUI自動化測試階段
- 階段一:前端基礎
- 階段二:Document物件操作
- 階段三:Python+selenium
- 階段四:關鍵字驅動/POM+Excel+unitTest+BeautifulReport+yaml+分散式+多執行緒的自動化UI測試框架
第三步:APPUI自動化測試階段
- 階段一:Python+Appium
- 階段二:開源App系統專案實戰
第四步:介面自動化測試階段
- 階段一:基於Request庫的Python介面自動化測試
- 階段二:Flask介面框架+Swagger介面文件
第四步:介面自動化測試階段
- 階段一:Pytest框架
- 階段二:獨立測試框架
- 階段三:介面與UI框架整合
什麼專案適合做自動化測試?
需求穩定,不會頻繁變更。
自動化測試最怕的就是需求不穩定,過高的需求變更頻率會導致自動化測試用例的維護成本直線上升。剛剛開發完成並除錯通過的用例可能因為介面變化,或者是業務流程變化,不得不重新開發除錯。所以自動化測試更適用於需求相對穩定的軟體專案。
需要在多種平臺上重複執行相同測試的場景。
這樣的場景其實有很多,比如:
對於GUI 測試,同樣的測試用例需要在多種不同的瀏覽器上執行;
對於移動端應用測試,同樣的測試用例需要在多個不同的Android 或者 iOS 版本上執行,或者是同樣的測試需要在大量不同的移動終端上執行;對於一些企業級軟體,如果對於不同的客戶有不同的定製版本,各個定製版本的主體功能絕大多數是一致的,可能只有個別功能有輕微差別,測試也是需要覆蓋每個定製版本的所有測試;這些都是自動化測試的最佳應用場景,因為單個測試用例都需要被反覆執行多次,能夠使自動化測試的投資回報率最大化。
研發和維護週期長,需要頻繁執行迴歸測試。
在我看來,軟體產品比軟體專案更適合做自動化測試。首先,軟體產品的生命週期一般都比較長,通常會有多個版本陸續釋出,每次版本釋出都會有大量的迴歸測試需求。
同時,軟體產品預留給自動化測試開發的時間也比較充裕,可以和產品一起迭代。
其次,自動化測試用例的執行比高於1:5,即開發完成的用例至少可以被有效執行 5 次以上時,自動化測試的優勢才可以被更好地體現。
對於軟體專案的自動化測試,就要看專案的具體情況了。
如果短期的一次性專案,就算從技術上講自動化測試的可行性很高,但從投入產出比(ROI)的角度看並不建議實施自動化,因為千辛萬苦開發完成的自動化用例可能執行一兩次,專案就結束了。我還遇到過更誇張的情況,自動化測試用例還沒開發完,專案都已經要上線了。所以,對於這種短期的一次性專案,我覺得你應該選擇手工探索式測試,以發現缺陷為第一要務。
而對於一些中長期專案,我的建議是:對比較穩定的軟體功能進行自動化測試,對變動較大或者需求暫時不明確的功能進行手工測試,最終目標是用20% 的精力去覆蓋 80% 的迴歸測試。
某些測試專案通過手工測試無法實現,或者手工成本太高。
對於所有的效能和壓力測試,很難通過手工方式實現。
比如,某一個專案要求進行一萬併發使用者的基準效能測試(Benchmark test),難道你真的要找一萬個使用者按照你的口令來操作被測軟體嗎?又比如,對於 7×24 小時的穩定性測試,難道你也要找一批使用者沒日沒夜地操作被測軟體嗎?這個時候,你就必須藉助自動化測試技術了,用機器來模擬大量使用者反覆操作被測軟體的場景。當然對於此類測試是不可能通過 GUI 操作來模擬大量使用者行為的。
總結
我給大家準備了Python自動化測試的資料和大廠的面試題,我把資料和麵試題都放在我的公眾號【程式設計師阿信】,回覆66即可獲取。
相關文章
- python自動化測試Python
- 軟體測試:自動化測試
- Python 介面自動化測試Python
- 有效進行自動化測試,這幾個軟體測試工具一定要收藏好!!!
- 自動化測試框架知識,讀這一篇就夠了!框架
- 自動化測試是什麼?什麼軟體專案適合自動化測試?
- 軟體自動化測試有什麼優勢?自動化測試框架有哪些?框架
- Python 自動化測試框架unittestPython框架
- selenium+python自動化測試Python
- Python自動化測試框架-pytestPython框架
- python自動化測試-原創Python
- 自動化測試與軟體測試有什麼區別?Python入門教程Python
- 自動化測試系列 —— UI自動化測試UI
- 自動化測試進階課程——Selenium自動化測試通關實戰班
- 軟體測試理論(2)自動化測試
- 軟體自動化測試的四個階段
- Python自動化測試框架介紹Python框架
- python 桌面應用自動化測試Python
- Eggplant—HMI自動化測試軟體
- 通用自動化測試軟體 — TAE
- Eggplant—HMI 自動化測試軟體
- 如何做自動化測試?什麼是自動化測試?
- 【自動化測試入門】自動化測試思維
- 自動化測試可替代手動測試?軟體測試這個誤區你有嗎?
- 如何學習自動化測試?從手工測試到自動化測試的過程…
- 基於Python豆瓣自動化測試【2】Python
- 用python實現selenium 自動化測試Python
- Jmeter+Ant+Python 介面自動化測試JMeterPython
- Python自動化測試~PO模型封裝Python模型封裝
- python自動化測試(一)--uiautomator總結PythonUI
- Python自動化測試框架有哪些?Python入門!Python框架
- 軟體測試為什麼需要自動化測試框架?權威軟體測試公司分享框架
- 軟體自動化測試工具的歷史演進
- 自動化裝置測試與自動化測試的區別
- 介面自動化測試錄製工具,讓python selenium自動化測試指令碼開發更加方便Python指令碼
- 為什麼要學習自動化測試?這篇文章告訴你答案
- 搭建appium+python自動化測試環境APPPython
- Python 自動化測試 必會模組 UnittestPython