probando las vistas

10
Probando las vistas con RSpec::Rails

Upload: rubyc-slides

Post on 27-Jun-2015

637 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Probando las vistas

Probando las vistas

con RSpec::Rails

Page 2: Probando las vistas

Porque es importante?

Es lo que TU usuario final ve!Pocos desarrolladores se 'molestan' en probar vistas.Generalmente es el area con codigo de menor calidad.Estas desarrollando una aplicación web!Menos QA por hacer.Es mas rapido que probarlo en Integration tests.BDD (y TDD) requieren crear la prueba primero :o

Page 3: Probando las vistas

Te imaginas:

WTF!!! ->

Page 4: Probando las vistas

Pero, porque no mejor...

Usar los Integration o Acceptance Tests para esto.- Son mas lentos- Sera mas dificil saber que fallaUsar render_view (integrate_views) en los RSpec::Controllers- Aislar bugs entre vista/controllerDejarlo para probar manualmente...No probar...

Page 5: Probando las vistas

Como?

No probar toda la vista, solo elementos claves.Ruby on Rails provee assetors para probar:

assert_selectassert_select_emailassert_select_rjsassert_select_encodedcss_select

RSpec tambien lo soporta, y es el que usaremos :]

Page 6: Probando las vistas

RSpec::Rails Views

Page 7: Probando las vistas

Métodos disponibles

Conveniences assignsflash, params, session

Expectations (response)containhave_taghave_selectorhave_xpath

(ademas match_*, assert_*, assert_not_*)rendered & view helpers

Page 8: Probando las vistas

Probemos:#index view:

#index_spec.rb

Page 9: Probando las vistas

Que mas?

share_examples_forPara evitar repetir la misma prueba entre vistas que comparten parciales o funcionalidad.

Probar toda logica en la vista (helpers)

Si bien lo ideal es no revisar CSS, si se deberia revisar las clases/ids aplicados a los elementos clave.

Page 10: Probando las vistas

Links interesantes:

http://rspec.info/rails/writing/views.html

http://rspec.info/documentation/

http://guides.rubyonrails.org/testing.html#testing-views

Gracias :)