是否可以通过Web界面执行单元测试...如果是这样的话?
编辑:现在我想要结果...对于我希望它们自动化的测试...可能每次我对代码进行更改.对不起,我忘了让这个更清楚
编辑:
这个答案在这一点上已经过时了:
使用Jenkins而不是Hudson(同样的新名称).
使用django-jenkins而不是xmlrunner.py.
django-jenkins的链接有关如何将Jenkins与Django一起使用的精彩教程.我将保留下面的文字,因为它仍然有一些很好的信息.
正如布莱恩所说,我会使用哈德森来安排,运行和收集测试结果.您可以修改测试以使用xmlrunner.py(由Sebastian Rittau编写),它将测试结果输出到Hudson的JUnit兼容XML文件中.
以下是测试代码如何使用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
).
检查Publish JUnit测试结果报告.如果它有一个错误,'TEST-*.xml' doesn't match anything
你可以放心地忽略它.它看起来像这样:
JUnit设置http://www.snowpeaksoftware.com/stuff/hudson_config.png
完成所有操作后,您将能够在登记后每次Hudson运行时查看测试结果.它看起来像这样:
哈德森单元测试结果http://www.snowpeaksoftware.com/stuff/unittest_results.png
您还可以获得更多详细页面,例如此页面:
哈德森单元测试详细结果http://www.snowpeaksoftware.com/stuff/test_results_detailed1.png
和这个页面:
哈德森单元测试详细结果http://www.snowpeaksoftware.com/stuff/test_results_detailed2.png