Skip to main content

使您的 Django 测试简单而快速

项目描述

django-nose你的 Django 测试中提供了所有鼻子的优点,比如:

  • 默认情况下仅测试您的应用程序,而不是碰巧在INSTALLED_APPS中的所有标准应用程序

  • 在一个或多个特定模块(或应用程序、类、文件夹或仅运行特定测试)中运行测试

  • 无需将所有测试导入tests/__init__.py。这不仅可以节省繁忙的工作,还可以消除意外影响测试课程的可能性。

  • 利用所有有用的鼻子插件

它还提供:

  • 夹具捆绑,一项可选功能,可将基于夹具的测试速度提高 4 倍

  • 重复使用之前创建的测试数据库,将启动时间缩短 10 秒

  • 卫生 TransactionTestCases,可以为您节省每次测试的数据库刷新

  • 支持各种数据库。使用 MySQL、PostgreSQL 和 SQLite 进行测试。其他人也应该工作。

django-nose 需要nose 1.2.1 或更高版本,建议使用最新版本。它遵循Django 的支持政策,支持:

  • 带有 Python 2.7、3.4 或 3.5 的 Django 1.8 (LTS)

  • Django 1.9 与 Python 2.7、3.4 或 3.5

  • 带有 Python 2.7、3.4 或 3.5 的 Django 1.10

  • 带有 Python 2.7、3.4、3.5 或 3.6 的 Django 1.11 (LTS)

  • Django 2.0 与 Python 3.4、3.5、3.6 或 3.7

  • Django 2.1 与 Python 3.5、3.6 或 3.7

  • Django 2.2 与 Python 3.5、3.6 或 3.7

用户须知

至少从 2015 年开始,nose就一直处于维护模式。django-nose也处于维护模式,唯一的维护者不再是活跃用户。访问Jazzband.co了解如何维护django-nose以及如何提供帮助。新项目应考虑使用pytestunittestDjango 测试框架

安装

你可以从 PyPI 中获得 django-nose ……:

$ pip install django-nose

开发版本可以安装...:

$ pip install -e git://github.com/jazzband/django-nose.git#egg=django-nose

由于 django-nose 扩展了 Django 的内置测试命令,您应该将其添加到settings.py中的INSTALLED_APPS中:

INSTALLED_APPS = (
    ...
    'django_nose',
    ...
)

然后在settings.py中设置TEST_RUNNER

TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'

发展

代码

https://github.com/jazzband/django-nose

问题

https://github.com/jazzband/django-nose/issues?state=open

文档

https://django-nose.readthedocs.io

变更日志

1.4.7 (2020-08-19)

1.4.6 (2018-10-03)

  • 文档 Django 2.0 和 2.1 支持,无需更改

  • 记录 Python 3.7 支持

1.4.5 (2017-08-22)

  • 添加 Django 1.11 支持

1.4.4 (2016-06-27)

  • 添加 Django 1.10 支持

  • 放弃 Django 1.4 - 1.7 和 Python 2.6 支持

  • 放弃南方支持

1.4.3 (2015-12-28)

  • 添加 Django 1.9 支持

  • 支持不带等号的长选项,如“--attr selected”

  • 使用回调选项支持鼻子插件

  • 支持没有默认值的鼻子选项(jsatt)

  • 从安装依赖项中删除 Django,以避免意外升级(jsocol,willkg)

  • 现在将 REUSE_DB 设置为空值会禁用 REUSE_DB,而不是启用它 (wdoekes)

1.4.2 (2015-10-07)

  • 警告不要在文档中使用 REUSE_DB=1 和 FastFixtureTestCase

  • REUSE_DB=1 在 Django 1.7、1.8 (scottsexton) 中使用新的事务管理

  • 尽量避免意外使用 REUSE_DB=1 的生产数据库 (alexjg, eroninjapan)

  • 支持的 Django 版本仅限于当前支持的 Django 版本 1.4、1.7 和 1.8,以及相关的 Python 版本。

1.4.1 (2015-06-29)

  • 修复版本号(ezarowny)

  • 修复选择选项,不间断的鼻罩(aamirtharaj-rpx,jwhitlock)

  • 支持 1.8 应用加载系统 (dgladkov)

  • 支持非 ASCII 文件名(singingwolfboy)

  • 更好的 PEP8 断言名称 (roganov)

1.4 (2015-04-23)

  • Django 1.8 支持(timc3、adepue、jwhitlock)

  • 支持 –testrunner 选项 (st4lk)

  • 修复 REUSE_DB 在 py3k (edrmp) 中的第二次运行

1.3 (2014-12-05)

  • Django 1.6 和 1.7 支持(conrado、co3k、Nepherhotep、mbertheau)

  • Python 3.3 和 3.4 测试和支持(frewsxcv、jsocol)

1.2 (2013-07-23)

  • Python 3 支持(melinath 和 jonashaag)

  • Django 1.5 兼容(fabiosantoscode)

1.1 (2012-05-19)

  • Django TransactionTestCases 不会自行清理;他们将垃圾留在数据库中,仅在_pre_setup上进行清理。因此,Django 确保这些测试最后运行。现在 django-nose 也可以。这意味着现有项目的失败源减少了一个。(埃里克·罗斯)

  • 添加对卫生 TransactionTestCases 的支持。(埃里克·罗斯)

  • 支持仅用于测试的模型。只需将它们放在加载测试过程中导入的任何文件中即可。不再需要疯狂的黑客攻击。(埃里克·罗斯)

  • 使夹具捆绑器更加保守,修复了一些可以想象的情况,如果 TransactionTestCase 进入捆绑包的中间,夹具将不会按预期显示。(埃里克·罗斯)

  • 修复将 SQLAlchemy 与连接池结合使用时出现的错误。(罗杰胡)

  • 优雅地忽略Django 1.4 中引入的新--liveserver选项;不要让它通过鼻子。(亚当·德普)

1.0 (2012-03-12)

  • 用于避免不必要的夹具设置的新夹具捆绑插件 (Erik Rose)

  • 将 FastFixtureTestCase 从 test-utils 移入,所以现在所有的夹具捆绑内容都在一个库中。(埃里克·罗斯)

  • 添加了 REUSE_DB 设置以加快启动和关闭速度。(埃里克·罗斯)

  • 修复了打印具有某些详细程度的选项时的崩溃问题。(丹尼尔·阿贝尔)

  • 打破对 MySQL 的硬依赖。支持 PostgreSQL。(罗杰胡)

  • 支持基于内存和磁盘的 SQLite。(罗杰胡和埃里克罗斯)

  • 确定软件包要求的版本。(丹尼尔·米兹里奇)

_(可以在完整文档中找到旧的更改)。_

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

django-nose-1.4.7.ta​​r.gz (45.0 kB 查看哈希)

已上传 source

内置分布

django_nose-1.4.7-py2.py3-none-any.whl (26.5 kB 查看哈希

已上传 py2 py3