Ver índice de contenidos del libro

22.9. Probando la cache

Antes de crear las pruebas, tenemos que activar la cache para el entorno test modificando su archivo de configuración:

# apps/frontend/config/settings.yml
test:
  .settings:
    error_reporting: <?php echo ((E_ALL | E_STRICT) ^ E_NOTICE)."\n" ?>
    cache:           on
    web_debug:       off
    etag:            off

Utiliza el siguiente código para probar la página de publicación de una nueva oferta de trabajo:

// test/functional/frontend/jobActionsTest.php
$browser->
  info('  7 - Job creation page')->
 
  get('/fr/')->
  with('view_cache')->isCached(true, false)->
 
  createJob(array('category_id' => $browser->getProgrammingCategory()->getId()), true)->
 
  get('/fr/')->
  with('view_cache')->isCached(true, false)->
  with('response')->checkElement('.category_programming .more_jobs', '/23/')
;

El tester view_cache se utiliza para probar la cache. El método isCached() requiere dos valores booleanos:

  • El primero indica si la página debe encontrarse en la cache
  • El segundo indica si la página debe guardarse en la cache junto con su layout

Nota Aunque el framework para pruebas funcionales incluye muchas herramientas útiles, en ocasiones es más sencillo descubrir los problemas en el navegador. Para ello, crea un controlador frontal asociado al entorno de pruebas test y echa un vistazo al archivo de log generado en log/frontend_test.log.