Python測試開發庫及項目(超全面!)

2021-12-24 程式設計師臻叔

原文連結:https://www.jianshu.com/p/ea6f7fb69501


參考資料:

https://github.com/vinta/awesome-python

https://github.com/atinfo/awesome-test-automation

https://westurner.github.io/wiki/awesome-python-testing



splinter - web UI測試工具,基於selnium封裝。https://github.com/cobrateam/splinterhttps://github.com/SeleniumHQ/selenium/tree/master/py --推薦 文檔參考:https://china-testing.github.io/selenium_example5.htmlmechanize- Python中有狀態的程序化Web瀏覽。https://github.com/python-mechanize/mechanizeselene - 使用Python + Ajax支持+ PageObjects + Widgets進行簡明UI測試https://github.com/yashaka/selene/hitch - 基於服務的應用程式的高級集成測試框架。https://github.com/hitchtest/hitchhttps://github.com/python-needle/needleseleniumbase - 端到端自動化測試框架。https://github.com/seleniumbase/SeleniumBasepytest_splinter - pytest spinter和selenium集成。https://github.com/pytest-dev/pytest-splinterBrowsermob Proxy - Browsermob Proxy的python包裝器。https://github.com/AutomatedTester/browsermob-proxy-pySelenium-Requests - 擴展Selenium WebDriver類以包含請求庫中的請求函數,同時完成所有需要的cookie和請求頭處理。https://github.com/cryzed/Selenium-Requests
https://github.com/appium/python-client --推薦https://github.com/xiaocong/uiautomatorATX - 智慧型手機自動化工具。支持iOS,Android,WebApp和遊戲。網易出品 https://github.com/xiaocong/uiautomator --推薦uiautomator2- Android Uiautomator2 Python Wrapper。 https://github.com/openatx/uiautomator2 --推薦facebook-wda Facebook WebDriverAgent Python Client Library (not official) 可用於IOS應用測試。 https://github.com/openatx/facebook-wda2 --推薦
Winium.Desktop - 開源測試自動化工具,用於基於WinForms和WPF平臺自動測試Windows應用程式,基於Selenium遠程WebDriver實現。https://github.com/2gis/Winium.Desktop/pyautogui- 跨平臺的UI自動化工具,控制滑鼠和鍵盤。https://github.com/asweigart/pyautoguiautopy - 簡單的跨平臺GUI自動化工具包,適用於Python。https://github.com/msanders/autopypywinauto - Windows UI自動化。https://github.com/pywinauto/pywinauto/SikuliX - 基於OpenCV的GUI測試框架,使用圖像識別來定位與之間的項目,來自python 2.7的腳本,跨平臺。https://github.com/RaiMan/SikuliX-2014
https://github.com/reclosedev/pyautocadhttps://developer.android.com/studio/test/monkeyrunner/index.htmlhttps://pypi.python.org/pypi/ldtphttps://pypi.python.org/pypi/dogtailpyautoit- autoit python api。https://github.com/jacexh/pyautoit雪峰磁針石說明:autopy、WATSUP、winGuiAuto因為較長時間未更新未收錄。https://china-testing.github.io/testing_tools_perf.html
http://funkload.nuxeo.org/ --推薦Locust.io了解伺服器端性能的好工具。 語言python3。源碼:https://github.com/locustio/locust python3+ python2.7+ github上star和fork最多的性能測試工具。--強烈推薦Bees with Machine Guns進行負載測試的蜜蜂(微型EC2實例)。語言python3+ python2.6+ https://github.com/newsapps/beeswithmachineguns --強烈推薦Multi-Mechanize用於性能和負載測試的開源框架它運行並發Python腳本以生成針對遠程站點或服務的負載(複合事務)。它通常用於Web性能和擴展性測試,但您也可以使用Multi-Mechanize來測試任何遠程API。--基於python多進程和多線程實現,學習自行開發性能測試的佳品。Python 2.6 or 2.7 較長時間沒有更新,一般只建議改造使用。https://github.com/cgoldberg/multi-mechanizengrinder - 市面上最強大的性能測試工具之一主要用jython書寫腳本,性能在loadrunner和jmeter之上,擴展性好。https://github.com/naver/ngrinder --強烈推薦boom - 類似ab(ApacheBench)的性能測試工具。https://github.com/tarekziade/boom
https://github.com/svanoort/pyresttestHttpRunner HTTP接口測試框架 -- 推薦https://github.com/HttpRunner/HttpRunneraugmented-traffic-control facebook開發的最強悍弱網網絡模擬工具 --強烈推薦https://github.com/facebook/augmented-traffic-controlHypothesis - 高級單元測試測試框架,支持行為驅動,基於property 。-- 推薦https://github.com/HypothesisWorks/hypothesis-python unittest - (Python 標準庫) 單元測試框架-- 推薦 https://docs.python.org/2/library/unittest.html https://github.com/nestorsalceda/mambahttps://github.com/nose-devs/nose nose2- nose基於unittest2的版本。https://github.com/nose-devs/nose2pytest- 很好的強大的單元測試框架,實際上廣泛使用在自動化單元、接口、功能等測試。https://github.com/pytest-dev/pytest -- 強烈推薦 參考:https://china-testing.github.io/python_pytest_testing1.htmltestify - 單元測試框架,提供增強的測試fixture設置將測試套件拆分成易於並行化的存儲bucket,PEP8命名約定,帶有大量日誌/報告選項及顏色測試運行器。https://github.com/Yelp/Testify/trial - Twisted的單元測試框架,基於unittest。http://twistedmatrix.com/trac/wiki/TwistedTrialRobot Framework- 通用的python測試框架,易於上手生成的報告比較好看,適合小型公司使用,支持關鍵字和數據等驅動,系業界內很出名的框架。不過因為寫用例不能很靈活的應用python,需要大量的python封裝,大公司通常使用pytest,django,flask之類的庫自行開發。https://github.com/robotframework/robotframeworkgreen- 彩色(命令行能顯示多種顏色)的單元測試框架。https://github.com/CleanCut/greentox- 基於virtualenv的測試框架,主要用於解決多版本python問題。https://github.com/tox-dev/toxhttps://github.com/sixpack/sixpackhttps://github.com/gabrielfalcao/lettucepyccuracy- 行為驅動 web驗收測試框架。https://github.com/heynemann/pyccuracypytest-bdd- 基於pytest的行為驅動 測試框架。https://github.com/pytest-dev/pytest-bddhttps://github.com/txels/ddthttps://github.com/behave/behavehttps://github.com/gabrielfalcao/lettucemamba - Python的測試定義工具,基於行為驅動。https://github.com/nestorsalceda/mambapyvows - Python的異步行為驅動開發,Vows.js的python移植。https://github.com/heynemann/pyvowspyhamcrest - Python的Hamcrest匹配器。https://github.com/hamcrest/PyHamcrestsure - 強大而靈活的斷言python測試庫。https://github.com/gabrielfalcao/surefactory_boy - 基於thinkbot的factory_girl的fixture替代。https://github.com/FactoryBoy/factory_boy
https://bitbucket.org/DavidVilla/python-doublexmock:(Python3 標準庫) mock和patch。https://docs.python.org/3/library/unittest.mock.htmlhttps://github.com/spulec/freezegunhttmock:Python 2.7+ 和 3.4+ mock requests庫。https://github.com/patrys/httmockhttpretty:Python 的 HTTP 請求 客戶端mock 工具,暫時不支持python3。https://github.com/tox-dev/toxresponses:針對requests 庫的mock庫。https://github.com/getsentry/responsesVCR.py:錄製HTTP請求加快測試執行速度並可進行mock。https://github.com/kevin1024/vcrpy -- 推薦factoryboy:Python測試fixtures(setup和teardown)替代庫。https://github.com/FactoryBoy/factory_boymixer:另外一個測試fixtures(setup和teardown)替代庫,支持 Django, Flask, SQLAlchemy, Peewee 等。https://github.com/klen/mixermodelmommy:為 Django測試創建隨機fixtures https://github.com/vandersonmota/model_mommyhttps://github.com/joke2k/fakerhttps://github.com/emirozer/fake2dbhttps://github.com/lk-geimfari/mimesis雪峰磁針石說明:radar 因為github星級太少而未收錄 最近版本參見原文:https://github.com/china-testing/python-api-tesinghttps://bitbucket.org/ned/coveragepyhttps://github.com/ajalt/fuckitpyRoboBrowser:一個簡單的,Python 風格的庫,用來瀏覽網站,而不需要一個獨立安裝的瀏覽器。https://github.com/jmcarp/robobrowserMechanicalSoup:用於自動和網絡站點交互的 Python 庫。https://github.com/MechanicalSoup/MechanicalSoupaugmented-traffic-control:網絡模擬工具。-- 強烈推薦https://github.com/facebook/augmented-traffic-control 
buildbot - google等公司使用的持續集成框架,上手比Jenkins難,功能和性能遠比Jenkins強大。https://github.com/buildbot/buildbot/ python庫介紹-buildbot教程BitBake – 嵌入式Linux上類似make工具。http://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.htmlbuildout – 用於從多個部分創建,組裝和部署應用程式的構建系統。PlatformIO – 在不同的開發平臺的控制臺構建工具。https://github.com/platformio/platformio-corePyBuilder – 純Python編寫的持續構建工具。https://github.com/buildbot/buildbot/https://github.com/SCons/scons

jira –自動化JIRA。

https://github.com/pycontribs/jira


https://github.com/vinta/awesome-pythonhttps://github.com/atinfo/awesome-test-automationhttps://westurner.github.io/wiki/awesome-python-testing本文相關書籍下載:https://github.com/china-testing/python-api-tesing/blob/master/books.md本文github地址:https://github.com/china-testing/python-api-tesing如果這篇文章對你有幫助,請給臻叔點個讚!👍這樣我才有動力繼續更新下去!

也歡迎加入臻叔的測試交流群,我們一起交流成長!

更新日期 2021.11.02

獲得最新目錄,回復關鍵詞:目錄

資料匯總:測試必讀書籍 | 必知網站清單

學習路線:轉行測試 | 自動化測試-學習路線 | Python-學習路線 | 測試開發 |性能測試學習路線 

面試寶典:測試崗面試題專刊(牛客獨家) | 2020面試題合集 | Python編程題 | 測試基礎知識 | 測試基礎知識(舊) | 面試技巧 | 面試思路|怎麼測電梯| 

面試真題:百度面試題答案1  | 百度面試題答案2  | 字節面經1 |貝殼面經1

精華筆記:《餓了麼質量體系搭建實戰》| 《AI自動化測試》|《代碼整潔之道》 | 《性能測試》

測試基礎:軟體測試基本概念 | 黑盒測試用例 | 抓包教程|測試計劃|軟體測試生命周期 | 軟體測試基本分類|最全APP測試點 | 新手抓包教程 |

測試用例:測試用例書寫 | 抖音直播功能測試用例 | 優惠券測試用例|手機掃二維碼的測試用例 |

測試工具:測試工具庫 | 常用軟體 | 測試框架 | 瀏覽器F12 | Python測試開發庫及項目

測試思維:排查問題的思路

測試進階:淺談devOps

測試日常:提升測試效率

資料庫:資料庫索引 | 手撕SQL | 搜尋引擎ES | ES搭建

個人項目:搭建個人博客

移動端測試:adb命令 | APP耗電量測試 | 

自動化測試:ui自動化工具-uiautomator2 | 移動端UI自動化思路 |

接口/性能測試:接口測試實戰 | 伺服器監控平臺 | Apifox | Postman基礎 | 接口自動化Newman | Jmeter1 | Jmeter2 |Jmeter3 

網際網路工作:常見名詞(上)| 常見名詞(下)| 國外測試崗位1 | 國外測試崗位2 | 成都值得去的中小公司 | 廣州值得去的網際網路公司 | 杭州值得去的網際網路公司 |深圳值得去的網際網路公司  |

自學python:數據類型 | 編程風格 | 運算符 | 函數 | 變量

臻叔嘮嗑:成都程式設計師的生活 | 只會測試沒有前途?| 不靠譜的測試工程師 | 編程誤區 | 硬功夫 | 軟實力 | 粉絲問題(上)| 粉絲問題(下)| 四川美景 | 為什麼測試要懂開發 | 

推薦文章:垃圾回收|輸入URL後的技術步驟|面試題:IOC|搭建Appium環境|突擊JAVA面試|Redis消息隊列|線程和進程區別|資料庫優化|MongoDB應用場景|樂觀鎖和悲觀鎖適用場景|消息隊列MQ|阿里怎麼做單元測試 | 

段子:不講碼德

相關焦點

  • 工程化你的Python項目
    工程化可以幫助我們的項目更加規範,讓新成員更加容易理解項目。這篇文章裡我會結合國情來介紹一些Python工程化心得。python-skeleton├── README.md #├── docs #文檔├── etc #示例配置文件├── python_skeleton #項目所有代碼└── tests #測試代碼上面是我的工程結構,下面我們就要針對這個工程來實現工程化這樣的代碼結構就是import
  • 高效測試必學 | 用pytest生成測試報告!
    大家可以把代碼寫一遍然後自己試試,是否會得到我們想要的報告,其實這篇文章並沒有詳細講解代碼編寫過程,也沒有詳細說明哪段代碼是用來幹什麼的,因為這些代碼就是個模板,也是通用的,所以大家保存下來即可,以後編寫項目的時候直接哪裡用就可以了(作為一個python程式設計師,終極思想就是能簡化就簡化,能簡單寫代碼就簡單寫代碼,能copy就copy,嗯,就是這樣!)
  • Python測試框架pytest
    function: 如果 request 具有按方法範圍,則測試函數對象。cls: 收集測試函數的 class(可以是None)。instance: 收集測試函數的實例(可以是None)。module: 收集測試函數的 python 模塊對象。fspath: 收集此測試的測試模塊的文件系統路徑。
  • python操作excel:批量生成超連結
    excel設置超連結的函數是HYPERLINK,這裡用python批量生成超連結的思想其實很簡單,就是將公式寫入excel就行。
  • Python能幹什麼?為什麼會這麼火
    2.自動化運維:自動化處理大量的運維任務3.數據分析師:快速開發快速驗證,分析數據得到結果5.自動化測試:編寫為簡單的實現腳本,運用在Selenium/lr中,實現自動化。6.網站開發:藉助django,flask框架自己搭建網站。
  • 超詳細的Python自學項目收集!
    如果你想從零開始學習Python程式語言,或者你想對Python的應用有更深入的了解,W3Cschool資深用戶收集的Python自學項目非常適合您。  1.Python手冊教程  Python很好用,要想深入並系統學習、了解一些機制,或者快速入門,亦或者有其他語言編程經驗的人簡單,想看一看就可以很快地開始編寫Python程序,那麼Python手冊教程可以說是好幫手。
  • 測試 | 如何用 Python 測試 Android 應用
    其底層基於Google uiautomator,Google提供的uiautomator庫可以獲取屏幕上任意一個APP的任意一個控制項屬性,並對其進行任意操作,但有兩個缺點:1、測試腳本只能使用Java語言。2、測試腳本必須每次被上傳到設備上運行。 我們希望測試能夠用一個更腳本化的語言,例如Python編寫,同時可以每次所見即所得地修改測試、運行測試。
  • 如何建立一個完美的 Python 項目?
    在理想世界中,所有開發人員的關係是相互依賴和關聯的(協作開發),代碼要有完美的格式、沒有低級的錯誤、並且測試覆蓋了所有代碼。另外,所有這些將在每次提交時都可以得到保證。(代碼風格統一、類型檢測、測試覆蓋率高、自動檢測)在本文中,我將介紹如何建立一個可以做到這些點的項目。
  • 從小白變高手,這7個超實用的Python自動化測試框架請收好!
    pytest是python的一種單元測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起來更簡潔,效率更高。其實py.test有好多種方法執行測試:4、NoseNose是對unittest的擴展,使得python的測試更加簡單。nose自動發現測試代碼並執行,nose提供了大量的插件,比如測試輸出的xUnitcompatible,覆蓋報表等等。
  • Python unittest單元測試框架的使用
    >Python編寫單元測試代碼實例全面介紹python中很常用的單元測試框架unitestPython+unittest+requests+excel實現接口自動化測試框架基於Python的接口自動化unittest
  • Python unittest單元測試框架的使用
    >Python編寫單元測試代碼實例全面介紹python中很常用的單元測試框架unitestPython+unittest+requests+excel實現接口自動化測試框架基於Python的接口自動化unittest
  • 接口測試實戰項目:接口測試環境搭建
    要做接口測試,首先我們得搭建一套本地可以運行的接口環境。這次我選擇了一個搭建容易,適合學習的系統——學生管理系統。Python安裝這套管理系統是Python代碼寫的,因此需要Python環境。同樣是無腦安裝,按照我提供的安裝包和方法裝好即可。
  • 【學習筆記】超全面的 Python 重點
    Py2 VS Py3print成為了函數,python2是關鍵字不再有unicode對象,默認str就是unicodepython3除號返回浮點數沒有了long類型xrange不存在,range替代了xrange可以使用中文定義函數名變量名高級解包 和*解包
  • Python 資料 + 經典練手項目
    【基礎】0基礎入門python,24小時有人快速解答問題;【提高】40多個項目實戰,老手可以從真實場景中學習python;code.ziqiangxuetang.comDjango,裡面還有福利項目,單身狗福利,不多說,有緣的你一定能找到。
  • 一文獲取36個Python開源項目,平均Star 1667,精選自5000個項目
    : 基於Python的XSS測試工具XSStrike 是一款跨站點腳本檢測套件,包含四個手寫的解析器,一個智能 payload 生成器,一個強大的模糊搜尋引擎和速度極快的爬蟲。該語言是 Python 3.5+ 的超集,還帶有額外的 shell 原語。Xonsh 適合專家和新手日常使用。[GitHub Stars:3045]
  • python+selenium+unittest項目實踐
    這段時間以來我再一次對python進行了從頭到尾的梳理,並應用於自動化測試,通過不斷地摸索與嘗試,終於有了一些成果。正好公司要求為研發部同事做一次自動化測試分享會,順便寫下這篇文章,對這段時間的學習做一個總結。
  • python適合開發桌面軟體嗎?
    PyQtPython圖形開發包wxPythonwxPython是Python語言的一個比較好的GUI圖形開發庫,你可以很方便的就能夠創建功能完整、並且健全的wxPython除了上面這三個圖形界面開發工具,Python也還有其他的比較成熟的圖形界面開發工具庫,kivy同樣是開源工具包,並且這是一個在創新領域非常重視的圖形界面開發庫
  • 推薦一個非常優秀的python編程開發庫:強大而又高效的Anaconda
    python優先級的調節Linux安裝好了之後,一般有python2和python3,linux默認的是python2,但是現在python可能馬上就要被淘汰了,所以我們平時都是使用python3,或者pip3,這樣相對來說費事一些
  • Python & 機器學習項目集錦 | GitHub Top 45
    ,並從中精選出45個最具競爭力的項目。/年度開源Python項目 [平均4,078星]連結:https://medium.mybridge.co/30-amazing-python-projects-for-the-past-year-v-2018-9c310b04cdb3
  • 四個 Python 項目管理與構建工具
    關於項目目錄布局,有做成項目模板的,然後做成工具來應用項目模板。tox 是一個自動化測試和構建工具,它在構建過程中可創建 Python 虛擬環境,這讓測試和構建能有一個乾淨的環境。,並在其中運行測試與構建。