Django4.0 进阶测试主题-测试基于类的视图

2022-03-17 11:50 更新

为了在请求/响应周期之外测试基于类的视图,你必须确保它们配置正确,在实例化之后调用 ​setup()​。

例如,假设基于类的视图如下:

from django.views.generic import TemplateView class HomeView(TemplateView): template_name = 'myapp/home.html' def get_context_data(self, **kwargs): kwargs['environment'] = 'Production' return super().get_context_data(**kwargs)

你可以直接测试 ​get_context_data()​ 方法,首先实例化视图,然后向 ​setup()​ 传递一个 ​request​,然后再进行测试代码。

from django.test import RequestFactory, TestCase from .views import HomeView class HomePageTest(TestCase): def test_environment_set_in_context(self): request = RequestFactory().get('/') view = HomeView() view.setup(request) context = view.get_context_data() self.assertIn('environment', context)


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号