相关疑难解决方法(0)

如何从webapp2请求处理程序单元测试传递给jinja2模板的模板变量

我以前从未做过单元测试.我想掌握它.

我正在尝试测试我的webapp2处理程序.为此,我认为向处理程序发送请求是个好主意,例如:

request = webapp2.Request.blank('/')
# Get a response for that request.
response = request.get_response(main.app)
Run Code Online (Sandbox Code Playgroud)

问题是,响应主要只是一堆HTML等.

我想看看在处理程序转换为HTML之前从处理程序传递给我的jinja2模板的内容.

我希望我的测试能够处理处理程序类代码中的状态.我不想在响应处理程序中看到某些变量看起来像什么,然后我想看看dict模板在传递给render_to_response()之前的样子

我想测试这些变量是否具有正确的值.

这是我到目前为止的测试代码,但是因为response = request.get_response()只给了我一堆html而不是原始变量,所以我卡住了.

import unittest
#from google.appengine.ext import db
#from google.appengine.ext import testbed
#from google.appengine.datastore import datastore_stub_util
import main
import webapp2

class DemoTestCase(unittest.TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def testNothing(self):
        self.assertEqual(42, 21 + 21)

    def testHomeHandler(self):
        # Build a request object passing the URI path to be tested.
        # You can also pass headers, query arguments etc.
        request = webapp2.Request.blank('/') …
Run Code Online (Sandbox Code Playgroud)

google-app-engine unit-testing wsgi jinja2 webapp2

10
推荐指数
2
解决办法
2438
查看次数

标签 统计

google-app-engine ×1

jinja2 ×1

unit-testing ×1

webapp2 ×1

wsgi ×1