• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Django单元测试中的多个POST

django 来源:mapes911 6次浏览

我在编写单元测试来验证配置文件头像模块。所以,我有一个允许用户上传头像的表单。如果存在,它只是取代当前的一个。Django单元测试中的多个POST

在我的测试,我做了以下(类设置登录用户的 – 这里没有显示):

f = open('testfile1.jpg') 
    data = {'image':f} 
    response = self.client.post('/profile/uploadavatar/',data) 
    self.assertEqual(response.status_code, 200) 
    self.assertEqual(self.user1.get_profile().avatar.image.name, u'uploads/images/testfile1.jpg') 
    f.close() 

    f = open('testfile2.jpg') 
    data = {'image':f} 
    response = self.client.post('/profile/uploadavatar/',data) 
    self.assertEqual(response.status_code, 200) 
    self.assertEqual(self.user1.get_profile().avatar.image.name, u'uploads/images/testfile2.jpg') 
    f.close() 

第二assertEqual便以测试化身形象的名字,因为它仍然被设置为总是失败第一个文件名(testfile1.jpg)。但是,当我手动测试这个代码时,我认为它应该做到这一点,它将用新的代替旧的虚拟角色。

我做错了什么?我是新来的Django单元测试,所以我可能会错过一些非常简单的…

任何想法,将不胜感激。

提前致谢!


===========解决方案如下:

将“self.user1”对象与配置文件一起缓存在开头。

重新加载操作之间的用户/配置文件对象以查看更新的数据。

(从评论中拉出)


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)