1
0
mirror of https://github.com/django/django.git synced 2025-07-05 10:19:20 +00:00

[soc2009/testing] Coverage reports are near feature-complete. Just need to finish my code cleanup tomorrow. Then start testing

git-svn-id: http://code.djangoproject.com/svn/django/branches/soc2009/test-improvements@10962 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Kevin Kubasik 2009-06-09 11:22:43 +00:00
parent 40ad3e0c83
commit 6c082b5539
2 changed files with 8 additions and 6 deletions

View File

@ -30,14 +30,14 @@ class BaseCoverageRunner(object):
Runs the specified tests while generating code coverage statistics. Upon Runs the specified tests while generating code coverage statistics. Upon
the tests' completion, the results are printed to stdout. the tests' completion, the results are printed to stdout.
""" """
coverage.erase() #coverage.erase()
#Allow an on-disk cache of coverage stats. #Allow an on-disk cache of coverage stats.
#coverage.use_cache(0) #coverage.use_cache(0)
for e in getattr(settings, 'COVERAGE_CODE_EXCLUDES', []): for e in getattr(settings, 'COVERAGE_CODE_EXCLUDES', []):
coverage.exclude(e) coverage.exclude(e)
coverage.start()
brt = base_run_tests() brt = base_run_tests()
coverage.start()
results = brt.run_tests(test_labels, verbosity, interactive, extra_tests) results = brt.run_tests(test_labels, verbosity, interactive, extra_tests)
coverage.stop() coverage.stop()
@ -71,7 +71,7 @@ class BaseCoverageRunner(object):
for e in self.errors: for e in self.errors:
print >> sys.stderr, e, print >> sys.stderr, e,
print >> sys.stdout print >> sys.stdout
coverage._the_coverage.save() #coverage._the_coverage.save()
return results return results
@ -83,6 +83,7 @@ class ReportingCoverageRunner(BaseCoverageRunner):
Constructor, overrides BaseCoverageRunner. Sets output directory Constructor, overrides BaseCoverageRunner. Sets output directory
for reports. Parameter or setting. for reports. Parameter or setting.
""" """
super(ReportingCoverageRunner, self).__init__()
if(outdir): if(outdir):
self.outdir = outdir self.outdir = outdir
else: else:
@ -100,8 +101,8 @@ class ReportingCoverageRunner(BaseCoverageRunner):
Overrides BaseCoverageRunner.run_tests, and adds html report generation Overrides BaseCoverageRunner.run_tests, and adds html report generation
with the results with the results
""" """
res = BaseCoverageRunner.run_tests(self, *args, **kwargs) res = super(ReportingCoverageRunner, self).run_tests( *args, **kwargs)
coverage._the_coverage.load() #coverage._the_coverage.load()
cov = coverage.html.HtmlReporter(coverage._the_coverage) cov = coverage.html.HtmlReporter(coverage._the_coverage)
cov.report(self.modules.values(), self.outdir) cov.report(self.modules.values(), self.outdir)
#coverage._the_coverage.html_report(self.modules.values(), self.outdir) #coverage._the_coverage.html_report(self.modules.values(), self.outdir)

View File

@ -156,7 +156,8 @@ def django_tests(verbosity, interactive, test_labels):
from django.test.utils import get_runner from django.test.utils import get_runner
if not hasattr(settings, 'TEST_RUNNER'): if not hasattr(settings, 'TEST_RUNNER'):
settings.TEST_RUNNER = 'django.test.simple.run_tests' settings.TEST_RUNNER = 'django.test.simple.run_tests'
settings.COVERAGE_MODULE_EXCLUDES = ['modeltests', 'regressiontests', '__init__'] settings.COVERAGE_MODULE_EXCLUDES = []
#['modeltests', 'regressiontests']
settings.COVERAGE_CODE_EXCLUDES = ['def __unicode__\(self\):', 'def get_absolute_url\(self\):', ] settings.COVERAGE_CODE_EXCLUDES = ['def __unicode__\(self\):', 'def get_absolute_url\(self\):', ]
settings.COVERAGE_ADDITIONAL_MODULES = ['django'] settings.COVERAGE_ADDITIONAL_MODULES = ['django']
# 'from .* import .*', 'import .*', # 'from .* import .*', 'import .*',