Получение результата Django Unittest в поле зрения
Я не могу найти это нигде, но возможно ли запустить unittest из представления django, чтобы вывести его в шаблон? В настоящее время, если я бегу python manage.py test
Я получаю сообщение какRan 10 tests in 0.401s OK
". Я хотел бы получить доступ к этой информации с одного из моих взглядов. Любые предложения? Спасибо!
Изменить: Попробовал, не работает:
import StringIO
from django.core import manegement
output = StringIO.StringIO()
management.call_command('test', stdout=output)
print output.contents
1 ответ
Решение
Получилось то, что я хотел с:
import unittest
from testAdditional import UserTestCase #Where my unittest was defined
suite=unittest.TestLoader().loadTestsFromTestCase(UserTestCase)
testResult = unittest.TextTestRunner(verbosity=2).run(suite)
response_data['nrFailed'] = len(testResult.failures)
response_data['output'] = "{}{}".format('\n'.join([result[1] for result in testResult.errors]),'\n'.join([result[1] for result in testResult.failures]))
response_data['totalTests'] = testResult.testsRun