做测试的时候遇到难搞的模块需要一遍一遍地调,这时候如果可以只测试这一个模块就好了。于是打开谷歌,找到了大佬Miguel Grinberg给出的完美解决方法:
在test函数中添加参数test_name,如果test_name存在则调用unittest中的一个loadTestsFromName方法。
| @manager.commanddef test(coverage=False, test_name=None):
 """Run the unit tests."""
 import unittest
 if test_name is None:
 tests = unittest.TestLoader().discover('tests')
 else:
 tests = unittest.TestLoader().loadTestsFromName('tests.' + test_name)
 unittest.TextTestRunner(verbosity=2).run(tests)
 
 | 
在运行py项目的时候,用以下命令测试特定的模块或TestCase:
| python run.py test -t test_api
 
 
 python run.py test -t test_api.APITestCase
 
 
 python run.py test -t test_api.APITestCase.test_404
 
 |