El cliente de prueba de Django devuelve un objeto de respuesta de prueba que incluye las variables de contexto de plantilla que se utilizaron para representar la plantilla. https://docs.djangoproject.com/en/dev/topics/testing/#django.test.client.Response.contextCómo probar variables de contexto de plantilla con Flask
¿Cómo puedo obtener acceso a las variables de contexto de la plantilla mientras las pruebas en el Frasco?
Ejemplo vista:
@pgt.route('/myview')
def myview():
context = {
'var1': 'value 1',
'var2': 'value 2',
'var3': 'value 3',
}
return render_template('mytemplate.html', **context)
Ejemplo de Ensayo:
class MyViewTestCase(unittest.TestCase):
def setUp(self):
self.app = create_app()
self.client = self.app.test_client()
def test_get_success(self):
response = self.client.get('/pgt/myview')
# I don't want to do this
self.assertIn('value 1', response.data)
# I want to do something like this
self.assertEqual(response.template_context['var1'], 'value 1')
El contexto de la plantilla debe ser creado en el interior de la función de vista/método. Colocarlo afuera solo para probar no es una buena manera. La mejor manera es probar el contexto a través de [matraz-prueba] (http://packages.python.org/Flask-Testing/). – Jarus