3

我知道如何使用以下方法对我的视图进行单元测试:

class ViewsTests(unittest.TestCase):

    def setUp(self):
        request = DummyRequest()
        self.config = setUp(request=request)

    def tearUp(self):
        tearUp()

    def test_home(self):
        request = DummyRequest()
        inst = MyView(request)
        result = inst.View1()
        self.assertEqual(result['page_title'], 'Test')

问题在于它不会测试我的 Chamelon 模板。有时,.pt 文件中出现拼写错误,而我的视图测试无法捕捉到它们。

我想我可以使用 webtest 进行集成测试,但有时很难点击所有代码路径来尝试通过请求 URL 来呈现我的所有模板......

有没有一种简单的方法可以测试模板本身以确保它们呈现正常?

4

1 回答 1

2

集成测试似乎是最好的方法,以确保您在实际呈现的场景中获得所需的内容。

你可以做的是填充模拟值,渲染模板,然后在生成的视图上运行断言。

因此,对于您的“主页”视图,您将按照单元测试的预期使用“测试”填充“页面标题”,并首先检查模板是否呈现,然后确保视图的 HTML 或内容符合预期。

于 2013-04-18T21:09:18.333 回答