Python 如何查看在Django';s manage.py测试命令
在使用Django的Python 如何查看在Django';s manage.py测试命令,python,django,unit-testing,django-unittest,Python,Django,Unit Testing,Django Unittest,在使用Django的manage.py test命令完成测试执行后,仅向控制台打印通过测试的数量 (virtualenv)G:\Project\>python manage.py测试 正在为别名“default”创建测试数据库。。。 真的 .. ---------------------------------------------------------------------- 在0.017秒内运行了2次测试 好啊 正在销毁别名“default”的测试数据库。。。 有没有办法看到: 实际
manage.py test
命令完成测试执行后,仅向控制台打印通过测试的数量
(virtualenv)G:\Project\>python manage.py测试
正在为别名“default”创建测试数据库。。。
真的
..
----------------------------------------------------------------------
在0.017秒内运行了2次测试
好啊
正在销毁别名“default”的测试数据库。。。
有没有办法看到:
我在文件里找不到任何解决办法 您可以将
-v2
传递给测试
命令:
python manage.py test -v 2
运行此命令后,您将得到如下结果(我使用的是django 2,可以忽略迁移/数据库内容):
为别名'default'('file:memorydb_default?mode=memory&cache=shared')创建测试数据库。。。
要执行的操作:
同步未迁移的应用程序:消息、静态文件
应用所有迁移:管理、身份验证、内容类型、会话
在不迁移的情况下同步应用程序:
正在创建表。。。
正在运行延迟SQL。。。
运行迁移:
正在应用contenttypes.0001\u首字母。。。好啊
...
正在应用会话。0001_首字母。。。好啊
系统检查未发现任何问题(0静音)。
test_equal_hard(polls.tests.TestHard)。。。好的奈杰尔的答案很好,肯定是最低的进入门槛。但是,使用django_nose
(设置起来并不难;)可以获得更好的反馈
以下资料来自:
首先:安装一些要求:
pip install nose pinocchio django_nose
python manage.py test
pip install coverage
然后将以下内容添加到settings.py
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
NOSE_ARGS = ['--with-spec', '--spec-color']
然后按照正常方式运行测试:
pip install nose pinocchio django_nose
python manage.py test
pip install coverage
输出应如下所示:
注意:测试下的注释可以用来提供比名称更好的输出
e、 g:
def test_something(self):
"""Something should happen"""
...
NOSE_ARGS = ['--with-spec', '--spec-color',
'--with-coverage', '--cover-html',
'--cover-package=.', '--cover-html-dir=reports/cover']
将在运行测试时输出“应该发生的事情”
额外要点:您还可以生成/输出代码覆盖率:
pip install nose pinocchio django_nose
python manage.py test
pip install coverage
将以下内容添加到settings.py中的NOSE_参数中:'--with coverage','--cover html','--cover package=.','--cover html dir=reports/cover'
e、 g:
def test_something(self):
"""Something should happen"""
...
NOSE_ARGS = ['--with-spec', '--spec-color',
'--with-coverage', '--cover-html',
'--cover-package=.', '--cover-html-dir=reports/cover']
然后,当您运行python manage.py测试时,您将得到一个很好的代码覆盖率摘要,并且在reports/cover
Hi@toast38coza中会得到一个整洁的html报告。那太好了。我是Python新手,很高兴看到格式良好的测试输出。我正在寻找NOSE_ARGS的文档,但我发现的没有一个文档显示了规范和类似的内容。你能给我指一下那个吗?我基本上是在试图防止nose重复“类似于TransactionTestCase,但使用transaction.atomic()
来实现测试隔离………nTestCase可能是必要的(例如,测试一些事务行为)。”@MacarioTala--with spec参数来自pinocchio
插件(您可以pip安装该插件)。参见上面的“首先安装一些要求”。是的。我已经安装好了。让我试着找到关于皮诺奇的文件。谢谢为了共享,我替换掉了pinocchio,因为它有点太冗长了,我发现它没有分叉,而是:,你可能也喜欢它。我尝试了所有详细级别,但找不到一个显示没有迁移/数据库输出的单元测试的级别。如果没有第三方库,这真的不可能吗?