Python 测试框架的选择

Python 测试框架的选择

python testing framework.

如何选择一个易用、主流的测试框架?下面是我的方法。

一、网络资源

Google 上搜索 python testing framework 排名前三的链接分别是:

  1. unittest — Unit testing framework
    python 标准库自带的单元测试框架。
  2. PythonTestingToolsTaxonomy - Python Wiki
    列举了许多 python 测试框架库,并进行了简单的介绍。
  3. Python Testing - Python Test Frameworks and Strategies python 测试框架的文章汇总,主要介绍 unitest/nose/pytest

另外,IBM developerWorks 上的 Python 测试框架: 用 Python 测试框架简化测试 介绍了 zope.testing/pytest/nose 框架。

二、源码库

在 github 上查看目前主流 python 项目使用的测试框架。每个 python 项目都有 tests(或者类似)目录,查看其中的源码就能知道具体采用的测试框架是什么。

限于时间,我仅查看了 Python Packaging AuthorityPocoo 这两个开发组织的项目。

三、PyPI

PyPI 中的每个库,都有下载次数。根据下载次数可以得知库的流行程度。

下面的数字是今天(2014-10-09)统计的上月下载次数。

因为 pytest 已经整合进入 py ,所以上面提供这两个包的下载次数。

四、我的选择

虽然我更偏向于使用标准库,但观察了 unittest 的写法,发现还是比较繁琐。

nose 看起来似乎更加流行。就它了。

五、其它参考