django-nose与默认Django测试运行器有什么区别

20 投票
2 回答
4967 浏览
提问于 2025-04-17 04:44

我看到很多人用nose来运行他们的Django测试,但我还没搞明白用nose来跑Django测试有什么好处。如果有人能告诉我nose是什么,以及它对Django项目有什么帮助,那就太好了。

我找不到好的文档或文章来详细说明这些内容。

谢谢!

2 个回答

2

整体来说,还有很多其他功能,但我觉得人们使用nose/django_nose的一个主要原因是,它让你很容易进行代码覆盖率测试。

python manage.py test myapp --with-coverage --cover-package=myapp
3

我也对这个问题很好奇,看来django-nose使用python的nose库的主要好处是“测试发现”。

另外,从这个链接可以了解到,

你可以写简单的测试函数,也可以写测试类,这些类不一定要是unittest.TestCase的子类。nose还提供了一些很有用的功能,比如写定时测试、测试异常情况以及其他常见的使用场景。想了解更多,可以看看“编写测试”和“测试工具”。

根据我从freenode irc上的其他python开发者那里了解到的信息,Twisted框架中的Trial测试运行器也有类似nose的功能。

我对在django开发中使用django-nose还不是完全信服,但我会试试看,如果有更多发现会再反馈!

撰写回答