單元測試一:各種測試框架介紹


一、測試框架介紹:

進行代碼庫測試和生成測試數據的庫。

  • 測試框架
    • unittest – (Python 標准庫) 單元測試框架。
    • nose – nose 擴展了 unittest 的功能。
    • contexts – 一個 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的啟發。
    • hypothesis – Hypothesis 是一個基於先進的 Quickcheck 風格特性的測試庫。
    • mamba – Python 的終極測試工具, 擁護BDD。
    • PyAutoGUI – PyAutoGUI 是一個人性化的跨平台 GUI 自動測試模塊。
    • pyshould- Should 風格的斷言,基於 PyHamcrest
    • pytest- 一個成熟的全功能 Python 測試工具。
    • green- 干凈,多彩的測試工具。
    • pyvows- BDD 風格的測試工具,受Vows.js的啟發。
    • Robot Framework – 一個通用的自動化測試框架。 
  • Web 測試
    • SeleniumSelenium WebDriver 的 Python 綁定。
    • locust – 使用 Python 編寫的,可擴展的用戶加載測試工具。
    • sixpack – 一個和語言無關的 A/B 測試框架。
    • splinter – 開源的 web 應用測試工具。 
  • Mock測試
    • mock – (Python 標准庫) 一個用於偽造測試的庫。
    • doublex – Python 的一個功能強大的 doubles 測試框架。
    • freezegun – 通過偽造日期模塊來生成不同的時間。
    • httmock – 針對 Python 2.6+ 和 3.2+ 生成 偽造請求的庫。
    • httpretty – Python 的 HTTP 請求 mock 工具。
    • responses – 偽造 Python 中的 requests 庫的一個通用庫。
    • VCR.py – 在你的測試中記錄和重放 HTTP 交互。 
  • 對象工廠
    • factoryboy – 一個 Python 用的測試固件 (test fixtures) 替代庫。
    • mixer – 另外一個測試固件 (test fixtures) 替代庫,支持 Django, Flask, SQLAlchemy, Peewee 等。
    • modelmommy – 為 Django 測試創建隨機固件 
  • 代碼覆蓋率
    • coverage – 代碼覆蓋率測量。 
  • 偽數據
    • faker – 一個 Python 庫,用來生成偽數據。
    • fake2db – 偽數據庫生成器。
    • radar – 生成隨機的日期/時間。 
  • 錯誤處理
    • FuckIt.py – FuckIt.py 使用最先進的技術來保證你的 Python 代碼無論對錯都能繼續運行。

 

二、代碼分析和Lint工具

進行代碼分析,解析和操作代碼庫的庫和工具。

  • 代碼分析
    • code2flow – 把你的 Python 和 JavaScript 代碼轉換為流程圖。
    • pycallgraph -這個庫可以把你的Python 應用的流程(調用圖)進行可視化。
    • pysonar2 – Python 類型推斷和檢索工具。

 

  • Lint工具
    • Flake8 – 模塊化源碼檢查工具: pep8, pyflakes 以及 co。
    • Pylint – 一個完全可定制的源碼分析器。
    • pylama – Python 和 JavaScript 的代碼審查工具。

 

三、調試工具

用來進行代碼調試的庫。

  • 調試器
    • ipdb – IPython 啟用的 pdb
    • pudb – 全屏,基於控制台的 Python 調試器。
    • pyringe – 可以在 Python 進程中附加和注入代碼的調試器。
    • wdb – 一個奇異的 web 調試器,通過 WebSockets 工作。
    • winpdb – 一個具有圖形用戶界面的 Python 調試器,可以進行遠程調試,基於 rpdb2。
    • django-debug-toolbar – 為 Django 顯示各種調試信息。
    • django-devserver – 一個 Django 運行服務器的替代品。
    • flask-debugtoolbar – django-debug-toolbar 的 flask 版。

 

 

參考: 

https://www.zhihu.com/question/24590883/answer/92420471
https://www.zhihu.com/question/24590883/answer/92420471


免責聲明!

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



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