Skip to main content
 首页 » 编程设计

python之tastypie 和 django 测试用例

2025年05月04日25lhb25

我在编写检查我的自定义资源发布属性是否正常工作的单元测试时遇到了一些问题。我已经设法让它与一个简单的手动 jquery 一起工作,但这对长期测试没有帮助。

假设我的测试是这样的:

def testCollectionPost(self): 
    """ Test Create Entry operation. 
    """ 
    initialData = self.client.get(self.collectionUrl, format='json') 
    jsonObject = json.loads(initialData.content) 
    initialCount = jsonObject['meta']['total_count'] 
 
    dataToPost = {'id': initialCount + 1} # Real version contains other appropiate data 
    response = self.client.post(self.collectionUrl, data=json.dumps(dataToPost), content_type='application/json') 
    self.assertEqual(response.status_code, 201) 
    responseGet = self.client.get(self.collectionUrl, format='json') 
    jsonObject = json.loads(responseGet.content) 
    self.assertEqual(jsonObject['meta']['total_count'], initialCount + 1) 

这给了我一个 500 错误,我完全无法得到真正的回溯。

在我的主页上,我运行了以下运行良好的命令:

dataToPost = {'id': 277} # Real version has more data, that matches the unit test. 
pResp = $.ajax({ type: 'POST', 
    url: 'http://nelsog2.blah.example.com/metrics/api/v1/system_info/', 
    data: JSON.stringify(dataToPost), 
    contentType: 'application/json'}) 

有人知道问题出在哪里吗?

请您参考如下方法:

问题似乎已经解决了。我的猜测是在我已经解决问题后,请求被返回 500 错误的缓存捕获。