EDIT:
Ta odpowiedź jest nieaktualne w tym momencie:
- Zastosowanie Jenkins zamiast Hudson (to samo, nowa nazwa).
- Użyj zamiast xmlrunner.py.
Link do django-jenkins przechodzi do ciekawego samouczka na temat używania Jenkinsa z Django. Zostawię poniższy tekst, ponieważ wciąż ma on kilka ciekawych informacji.
Jak powiedział Bryan, użyję Hudson zaplanować, biegać i zbierać wyniki testu. Możesz zmodyfikować swoje testy, aby użyć wersji xmlrunner.py (napisanej przez Sebastiana Rittau), która wyświetli wyniki twojego testu w pliku XML zgodnym z JUnit dla Hudsona.
Oto przykład, w jaki sposób kod testowy użyłby 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)
Po zainstalowaniu Hudson, można utworzyć nowy projekt dla repozytorium źródłowego jesteś testowania. Musisz RTFM, ale w skrócie:
- Pod kodu źródłowego Management, musisz podać swoje dane repozytoria i uczynić go sondować repo okresowo (zwykle po prostu zrobić * * * * * więc sprawdza co minutę)
- Dodaj polecenie, które faktycznie uruchamia skrypt testowy (np.
python test.py
).
- Sprawdź raport wyników testu JUnit. Jeśli ma błąd taki jak
'TEST-*.xml' doesn't match anything
, możesz go bezpiecznie zignorować. Będzie to wyglądać mniej więcej tak: JUnit Settings http://www.snowpeaksoftware.com/stuff/hudson_config.png
Kiedy to wszystko zrobić będzie można zobaczyć wyniki testu za każdym razem Hudson biegnie po check-in.Będzie to wyglądać mniej więcej tak:
Hudson Unit Test Results http://www.snowpeaksoftware.com/stuff/unittest_results.png
również uzyskać bardziej szczegółowe takich stron tej strony:
Hudson Unit Test Detailed Results http://www.snowpeaksoftware.com/stuff/test_results_detailed1.png
i tej strony:
Hudson Unit Test Detailed Results http://www.snowpeaksoftware.com/stuff/test_results_detailed2.png
Lubisz chcesz uruchomić testy z poziomu interfejsu internetowego, obejrzeć wyniki lub jedno i drugie? –
@Eric: zobacz moją edycję – Stephen