问题描述
我正在我的一个 django(Django==3.1.6) 项目中编写测试。在编写和测试了大约 10 个测试之后,今天当我运行 python manage.py test
时出现错误 relation "web_workspace" does not exist
,导致测试中止。
但是,在运行项目时,即 python manage.py runserver
我的项目运行完美。
我已经删除了所有测试用例,只保留了一个,只是为了让这个问题的事情最少,但我仍然收到这个错误。这是我正在使用的 API 的测试代码。
from django.urls import reverse
from rest_framework import status
from rest_framework.test import APITestCase
def confirm_success_response(self,response,expected_response,match_values=False):
self.assertEqual(response.status_code,status.HTTP_200_OK)
self.assertisinstance(response.data,dict)
self.assertEqual(set(response.data.keys()),set(expected_response.keys()))
if match_values:
self.assertEqual(response.data,expected_response)
class APItests(APITestCase):
# pre and post test methods
def setUp(self):
pass
def tearDown(self):
pass
# methods for tests internal use
# Actual API test methods
def test_dummy_api(self):
url = reverse('test')
response = self.client.get(url,None,format='json')
expected_response = {'success':True,'message': "Api passed test"}
confirm_success_response(self,True)
我已经尝试过但没有奏效的事情:
- 删除迁移目录并重新创建迁移和迁移
- 以
python manage.py makemigrations <app_name>
身份运行特定于应用的迁移,然后迁移应用迁移。 - 同步数据库为
python manage.py migrate --run-syncdb
期待这里的解决方案,提前致谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)