2012-03-26 102 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錯誤所捕獲。