如何使用pytest模拟requests.post?

2024-04-25 22:47:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从一个虚假的URL获取数据。在这个过程中,方法some_method被调用,这就是它失败的地方,因为url无效

我正在使用Pytest。我怎样才能做到这一点

这是我的密码:

models.py

class AModel(models.Model):
    name = models.CharField(max_length=233, default='default')
    url = models.URLField(blank=True, null=True)


    def some_method(self, data):
        return requests.post(url=self.url, data=data)

tests.py

def test_amodel(self, mock):
    url = 'http://www.dummyurl.com/23'
    res = self.client.post(reverse(url))
    assert res.status_code == 200

Tags: 方法pyselftruedefaulturldatamodels

热门问题