您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

runtests.py 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/usr/bin/env python
  2. import sys
  3. import logging
  4. from optparse import OptionParser
  5. from coverage import coverage
  6. # This configures the settings
  7. from tests.config import configure
  8. configure()
  9. from django_nose import NoseTestSuiteRunner
  10. logging.disable(logging.CRITICAL)
  11. def run_tests(verbosity, *test_args):
  12. test_runner = NoseTestSuiteRunner(verbosity=verbosity)
  13. if not test_args:
  14. test_args = ['tests']
  15. num_failures = test_runner.run_tests(test_args)
  16. if num_failures:
  17. sys.exit(num_failures)
  18. if __name__ == '__main__':
  19. parser = OptionParser()
  20. parser.add_option('-c', '--coverage', dest='use_coverage', default=False,
  21. action='store_true', help="Generate coverage report")
  22. parser.add_option('-v', '--verbosity', dest='verbosity', default=1,
  23. type='int', help="Verbosity of output")
  24. (options, args) = parser.parse_args()
  25. if options.use_coverage:
  26. print 'Running tests with coverage'
  27. c = coverage(source=['oscar'])
  28. c.start()
  29. run_tests(options.verbosity, *args)
  30. c.stop()
  31. print 'Generate HTML reports'
  32. c.html_report()
  33. else:
  34. run_tests(options.verbosity, *args)