xUnit frameworks 單元測試框架
frameworks 框架
unittest - python自帶的單元測試庫,開箱即用
unittest2 - 增強版的單元測試框架,適用於Python 2.7以及後續版本
pytest - 成熟且功能強大的單元測試框架
plugincompat - pytest的執行及兼容性插件
nosetests - 讓python測試更容易一點
slash - python實現的單元測試框架
python
extensions 擴展
proboscis - 仿TestNG擴展了unittest模塊以及Nose的功能
grail - 能夠讓你一步一步編寫測試用例的庫
testify - 單元測試框架,提供了增強型fixture,用例切割並行運行,testrunner高亮及詳盡的log和report功能
trial - unittest模塊的擴展,提供了命令行的testrunner工具以及代碼覆蓋率的整合,跟nose差很少
subunit - 提供了unittest在另外一個進程執行用例並彙總測試數據的能力
testresources - 提供了多用例間管理測試數據的機制,兼容unittest
testtools - 爲Twisted和Bazaar提供的unittest擴展
Sancho - 運行用例,併爲失敗的用例提供報告,但僅限於此
zope.testing - testrunner,提供了不錯的debuge能力,而且集成了代碼覆蓋率。能夠跟zope項目使用,也能夠用在非zope項目上
pythoscope - 自動或半自動爲遺留的python系統建立測試用例的工具
testlib - 更強大的unittest,更多的斷言,支持module級的setup/teardown,skip test等...
dutest - An object oriented interface to retrieve unittest test cases out of doctests. Hides initialization from doctests by allowing setUp and tearDown for each interactive example. Allows control over all the options provided by doctest. Specialized classes allow selective test discovery across a package hierarchy.
green - Green是一個簡潔多彩的testrunner,跟nose很像
ddt - 讓unittest 支持 Data-Driven
pytractor Selenium python bindings的擴展. 目的是讓angular項目的測試更簡單
linux
TDD ATDD BDD 測試框架
BDD
behave - BDD 框架
lettuce - 又一個BDD框架
lettuce-tools - 一整套lettuce擴展,讓BDD更加簡單
contexts - Python的描述性測試工具
mamba - python的definitive testing 工具
pyvows - 異步的行爲驅動開發測試工具
pytest-bdd - py.test runner的BDD庫
robotframework - 最有名的acceptance test-driven development (ATDD)測試框架
awesome-robotframework - 各類rf的擴展庫
radish-bdd - BDD框架,支持gherkin語言
android
Assertions 斷言
pyshould - 基於pyhamcrest的Should style斷言
pyhamcrest - python版的Hamcrest matchers
sure -python實現的測試庫,提供了強大靈活的斷言
assertpy - 巨簡單的python單元測試斷言庫,提供了優雅流利的API. 支持Python 2 和 3.
ios
Mocking
mock - python實現的Mocking和Patching庫
Ludibrio - 用python實現的優雅的test doubles框架(mocks, stubs, spy, and dummies).
responses - mock請求的 Python測試工具庫
doublex - 強大的 test doubles 框架
freezegun - 經過mocking datetime模塊實現時光穿梭
httpretty - HTTP請求的mock工具
httmock - requests的mock工具,支持Python 2.6+ and 3.2+.
pretenders - 測試用的fake server
mock-server - 簡單的mock sever,支持REST and XML-RPC API,還有基於tornado的管理界面
VCR.py - 自動 mock HTTP 交互 讓測試更簡單快速
Test Data manipulation 測試數據的操做和處理
faker - 生成假數據的python庫
fake2db - 建立假數據庫
ForgeryPy - 使用起來很簡單的假數據生成庫.
radar - 隨機生成時間
robotframework-faker - faker的Robot Framework封裝
hypothesis - Library for property based testing in Python, based on the Haskell library Quickcheck.
factory_boy - factory_girl的python版本
fauxfactory - 隨機數據生成器
Code analysis 代碼掃描及分析
pysonar2 - 類型推斷web
coverage - 覆蓋率
pycallgraph - 流程可視化
Flake8 - The modular source code checker: pep8, pyflakes and co.
pylama - Python and JavaScript的代碼審查工具
Pylint - 源代碼分析器
hacking - OpenStack Hacking Style Checks (flake8 plugins).
prospector - 代碼分析工具,能夠輸出錯誤信息,潛在問題,不規範的代碼以及代碼複雜度
Web UI test automation Web UI 自動化
libraries 各類庫
selenium webdriver - 瀏覽器自動化工具
splinter - 簡單的web自動化工具,讓元素定位,表單提交等更加容易
mechanize - 有狀態可編程的瀏覽器
數據庫
frameworks and wrappers 框架和封裝
編程
py.saunter - 有主見的自動化測試框架,使用了selenium RC和webdriver api
moz-web-qa - py.test的插件,爲Mozilla的WebQA項目提供了額外功能
testutils sst - A web test framework that uses Python to generate functional browser-based tests.
wtframework - 讓web測試能夠配置的框架
holmium.core - Page Object及其餘工具庫支持
robotframework-selenium2library - Robot Framework的selenium擴展
gocept.selenium - selenium RC的API, 適合編寫基於WSGI, Plone, Zope 2, ZTK, or Grok 應用的測試用例
webium - 基於python的一個Page Object實現
robotframework-anywherelibrary - Robot Framework的擴展庫,使用selenium2測試web應用,使用appium測試移動應用
robotframework-pageobjects - 一個不錯的Page Object實現,能夠脫離robot framework單獨使用。 具體看這裏
elementium - 用jQuery風格的語法糖來實現瀏覽器的自動化測試用例
slickqa - slick-webdriver-python 項目是python selenium binding的一個封裝
selene - Concise UI 測試用例,使用python實現支持Ajax,PageObjects和Widgets
hitch - 編寫基於service的應用的測試用例
Needle - Needle是基於圖片比對的測試工做,它能夠對web應用的一部分進行截圖,而後跟預期結果的圖片進行比對
PyPOM - PyPOM是另外一個Page Object庫,適用於Selenium和Splinter測試
POM - POM是Page-Object-Model 微框架,目的是讓Web UI測試更加簡單,快速和有樂趣
websmith - Web測試的一套DSL
pages - 輕量的page object庫和組建
widgetastic - RedHat UI widget 組建框架
navmazing - PageObjects based navigation from RedHat
nightwatch - 基於python和selenium的UI 自動化測試框架. 靈感來源於nightwatch.js
windows
extensions 擴展
webdriver_manager - 主要目的是讓不一樣版本的瀏覽器driver管理起來更加方便
pytest_splinter - pytest spinter 和 selenium的集成
lettuce_webdriver - Selenium webdriver 的 lettuce封裝
Browsermob Proxy - python的Browsermob Proxy封裝
FireRobot - 一個Firefox的擴展,讓你能夠更高效的編寫基於robot framework的selenium用例
pytractor - Python的selenium擴展,以便更好的測試angular.js應用
Selenium-Requests - 擴展 Selenium WebDriver類,包含了Requests庫的一些功能,能夠更方便的處理cookie和請求頭
selenium-respectful - selenium的封裝,能夠並行訪問站點
Mobile test automation 移動端自動化測試工具
appium - 開源的自動化測試框架,能夠測試native/hybrid/mobile web應用。核心是基於webdriver協議進行了擴展
Winium.StoreApps - 開源的自動化測試用具,用來測試Windows Store應用,實現了Selenium Remote WebDriver
robotframework-androidlibrary - Robot Framework用來測試android應用的擴展庫
robotframework-appiumlibrary - appium的RobotFramework擴展
robotframework-ioslibrary -Robot的ios測試擴展庫
uiautomator - Android uiautomator的python封裝, 支持 Android 4.1+
ATX - 智能機自動化測試工具. 支持 iOS, Android, WebApp 和遊戲
api
Windows UI test automation Windows的UI測試工具
Winium.Desktop - 測試Windows應用(主要是基於WinForms和WPF平臺)的自動化測試工具. 實現了Selenium Remote WebDriver協議
PyAutoGUI - 跨平臺的GUI測試工具,支持經過python腳本控制鍵盤和鼠標
robotframework-autoitlibrary - Robot Framework的windows GUI測試擴展
autopy - 簡單跨平臺的GUI測試工具集
UISoup - 支持windows和MacOS平臺的UI自動化(僅工做在x86平臺)
pywinauto - 很是有python面向對象風格的GUI測試庫,現已支持64位機器以及py2和py3
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支持python2.7
瀏覽器
Unix \ Linux UI test automation
ldtp - 跨平臺的linux GUI測試項目
fMBT - 支持多平臺的python GUI測試庫
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支持python2.7
MacOS UI test automation MacOS UI自動化測試工具
ATOMac - 經過Apple Accessibility API來測試Mac應用的python庫
PyAutoGUI - 跨平臺的GUI測試工具,支持經過python腳本控制鍵盤和鼠標
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支持python2.7
REST API Testing REST API測試
Rester - 測試RESTful API的框架
pyresttest - REST以及API microbenchmarking工具
siesta - Python REST 客戶端
Virtual environments 虛擬環境
virtualenv - 建立隔離的python開發環境的工具
virtualenvwrapper - virtualenv的一些擴展
tox - 虛擬環境管理,能夠在不一樣的python版本上進行測試和截圖
pew - 一些管理虛擬環境的工具
Vex - 在命名的虛擬環境運行命令
PyRun - 單文件無需按照的python版本
pyenv - 簡單的python版本管理
Tapper - all-embracing test infrastructure.
Performance & stress & load 性能測試
Multi-Mechanize - 開源的性能測試框架
locust - 可擴展的python性能測試工具
Yandex.Tank - 性能及benchmark工具
pytest-benchmark - py.test的benchmark工具
Airspeed Velocity - 簡單的Python benchmarking工具自帶基於web的報告
The Grinder - 支持分佈式的負載測試框架. 包含一些常規用例,好比 HTTP web servers, SOAP and REST web services, 和 application servers (CORBA, RMI, JMS, EJBs),以及定製化的協議. 測試腳本使用Jython和Clojure實現
Tsung - 開源,支持多協議的分佈式性能測試工具. 能夠測試 HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP 和 Jabber/XMPP 服務
taurus - 自動化友好的持續測試工具
Security checking 安全掃描
sparta - 支持gui的網絡掃描工具
OWASP ZAP - 用python實現的OWASP ZAP-features API
pythem - pythem是多用途的安全測試工具