Действительно ли возможно выполнить тесты unittest через веб-интерфейс... и раз так как?
Править: На данный момент я хочу результаты... для тестов, я хочу, чтобы они были автоматизированы... возможно каждый раз, когда я вношу изменение в код. Извините я забыл делать это более ясным
РЕДАКТИРОВАТЬ:
Этот ответ на данный момент устарел:
Ссылка на django-jenkins ведет к хорошему руководству по использованию Jenkins с Django. Я оставлю текст ниже, так как в нем все еще есть полезная информация.
Как сказал Брайан, я бы использовал Hudson для планирования, запуска и сбора результатов тестов. Вы можете изменить свои тесты для использования xmlrunner.py (написанного Себастьяном Риттау), который будет выводить результаты ваших тестов в JUnit-совместимый XML-файл для Hudson.
Вот пример того, как тестовый код будет использовать xmlrunner:
import unittest
import xmlrunner
class TheTest(unittest.TestCase):
def testOne(self):
self.assertEquals(1, 1)
def testTwo(self):
self.assertEquals(2, 2)
def testThree(self):
self.assertEquals(3, 4)
if __name__ == '__main__':
suite = unittest.TestLoader().loadTestsFromTestCase(TheTest)
xmlrunner.XMLTestRunner().run(suite)
После установки Hudson вы создадите новый проект для репозитория исходного кода, который вы тестируете. Вам понадобится RTFM, но в двух словах:
python test.py
). «ТЕСТ - *. Xml» ничего не соответствует
, вы можете игнорировать ее. Это будет выглядеть примерно так:
Как только это будет сделано, вы сможете видеть результаты каждого запуска Hudson после регистрации. Это будет выглядеть примерно так:
(источник: snowpeaksoftware.com )
Вы также получите более подробные страницы, подобные этой странице:
(источник: snowpeaksoftware.com )
и эту страницу:
(источник: snowpeaksoftware.com )
Вы можете использовать Hudson , чтобы запланировать запуск тестов при каждой регистрации кода. Поскольку Hudson - это веб-приложение, вы можете увидеть результаты через Интернет (и / или опубликовать их, и / или отправить по электронной почте вам или вашей команде).