2012-03-26 70 views
2

我在编写一个单元测试时检查自定义资源发布属性是否正常工作时遇到了一些麻烦。我设法使用简单的手动jquery来工作,但这对长期测试没有帮助。tastypie和django测试用例

假设我的测试是这样的:

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'}) 

人有一个想法FO的问题是什么?

回答

0

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