我想爲我們的簡單應用程序編寫測試。雖然,所有的測試都運行得非常完美,但我仍然希望檢查視圖渲染或重定向到的模板名稱。檢查視圖呈現哪個模板的最好方法是什麼?在django.test.TestCase中檢查模板名稱
也許是這樣的:
self.assertTrue('test.html' in self.templates)
或
self.assertTrue(self.template.name, 'test.html')
怎麼可以這樣來達到的。
我想爲我們的簡單應用程序編寫測試。雖然,所有的測試都運行得非常完美,但我仍然希望檢查視圖渲染或重定向到的模板名稱。檢查視圖呈現哪個模板的最好方法是什麼?在django.test.TestCase中檢查模板名稱
也許是這樣的:
self.assertTrue('test.html' in self.templates)
或
self.assertTrue(self.template.name, 'test.html')
怎麼可以這樣來達到的。
來源: response = self.client.get("/my/view/url")
你可以做
self.assertEqual(response.templates[0].name, "expected_template.html")
或:
self.assertEqual(response.template[0].name, "expected_template.html")
爲 '模板' 和 '模板' 是相同的陣列。此數組列表的後續(非零)條目包含或擴展模板。
您應該使用assertTemplateUsed
(docs):
response = self.client.get('/url/')
self.assertTemplateUsed(response, 'test.html')