我试图测试一些意见的网址,但似乎我被封锁与证书,我看到其他职位与同样的问题,并试图遵循他们,但我仍然作为理智点
test_web_share_file_folder_view_set. py
class WebShareFileFolderViewSetTestCase(TestCase):
def setUp(self):
self.factory = APIRequestFactory()
self.user = User.objects.create_user(username='my_user', password='my_password')
headers = web_backend_api_access_headers()
self.token = headers['Authorization']
self.client = APIClient()
def test_list_with_search(self):
WebShareFileFactoryBoy(name="file_with_search", path="path_with_search")
url = reverse('web-share-file-folders-list')
request = self.factory.get(url, {'search': 'file_with_search'})
request.user = self.user
self.client.credentials(HTTP_AUTHORIZATION='Bearer' + self.token)
response = self.client.get(url, headers={'Authorization': 'Bearer ' + self.token})
print(response.data)
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertTrue('file_with_search' in response.data['results'][0]['name'])
下面是我开始测试时的错误
FAIL: test_list_with_search (tests.test_web_share_file_folder_view_set.WebShareFileFolderViewSetTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "-\tests\test_web_share_file_folder_view_set. py", line 32, in test_list_with_search
self.assertEqual(response.status_code, status.HTTP_200_OK)
AssertionError: 401 != 200
这里是响应的打印.data
{'detail': ErrorDetail(string='Need Authorization Header', code='authentication_failed')}
如果有人有一个 idea :? 谢谢你
解决方案:force_authenticate是解决方案
def test_of_BranchViewSet_with_delete_request(self):
self.user = baker.make(User)
url = reverse('branch-list')
self.client.force_authenticate(user=self.user)
response = self.client.delete(url)
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
我try 访问视图进行测试