单元测试一:各种测试框架介绍

一、测试框架介绍:

进行代码库测试和生成测试数据的库。

  • 测试框架
    • 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

posted on 2018-08-24 17:34  myworldworld  阅读(4350)  评论(0编辑  收藏  举报

导航