您可以尝试按照以下步骤解决问题:
- 确保您已在settings.py中启用了覆盖率
COVERAGE_MODULE_EXCLUDES = ['tests$', 'settings$', 'urls$', 'locale$','migrations$','wsgi$']
COVERAGE_REPORT_HTML_OUTPUT_DIR = 'test_reports'
- 确保您的测试用例正确地设置了URL,并且包括从测试服务器获得状态代码(例如200,404等)的assert语句。示例代码:
from django.test import TestCase, Client
from django.urls import reverse
class MyUrlsTests(TestCase):
def setUp(self):
self.client = Client()
self.test_url = reverse('my_url_name')
def test_my_url_view(self):
response = self.client.get(self.test_url)
self.assertEqual(response.status_code, 200)
-
运行测试。确保测试用例的所有部分都正在运行,并且没有发生错误。
-
在Shell中使用coverage run命令重新运行您的测试:
coverage run --source='.' manage.py test app_name
- 最后,使用coverage report命令生成报告:
coverage report -m
希望这可以帮助您解决您的问题!