Tôi đã thử nghiệm ứng dụng của mình và bị kẹt vào lỗi mà dường như không liên quan gì đến ứng dụng. Tôi có một bài kiểm tra đơn vị như sau:TypeError: int() đối số phải là một chuỗi hoặc một số, không phải 'AnonymousUser' trong Django
class TagSaveAndLoadTest(TestCase):
fixtures = ['users.json']
def setUp(self):
self.client = Client()
self.client.login(user='test_user', password='123')
def test_register_save(self):
tag_dict = {
'sex' : 4,
'drugs' : 3,
'rocknroll' : 1,
}
response = self.client.post('/register/save_tags/', {'skilltags' : json.dumps(tag_dict)})
self.assertEqual(response.status_code, 200)
Lỗi tôi nhận được là: TypeError: int() argument must be a string or a number, not 'AnonymousUser'
. Các tệp xuất hiện trên trang truy nguyên là base.py
, manages.py
, query.py
, v.v. Có vẻ như yêu cầu của tôi bị kẹt ở đâu đó trong phần mềm trung gian và tôi không biết cách xử lý nó. Làm thế nào là nó thậm chí có thể cho yêu cầu không để đạt được quan điểm của tôi hoặc thậm chí điều khiển? Tại sao có một vấn đề với AnonymousUser nếu chức năng 'setUp()' ghi lại một người dùng thử nghiệm?
Truy xuất đầy đủ có thể được tìm thấy here, cảm ơn trước!