Probando las vistas   con RSpec::Rails
Porque es importante?  Es lo que TU usuario final ve!  Pocos desarrolladores se molestan en probar vistas.  Generalmente e...
Te imaginas:       WTF!!! ->
Pero, porque no mejor...  Usar los Integration o Acceptance Tests para esto.  - Son mas lentos  - Sera mas dificil saber q...
Como? No probar toda la vista, solo elementos claves. Ruby on Rails provee assetors para probar:    assert_select    asser...
RSpec::Rails Views
Métodos disponibles   Conveniences     assigns     flash, params, session   Expectations (response)      contain      have...
Probemos:#index view:#index_spec.rb
Que mas? share_examples_for    Para evitar repetir la misma prueba entre vistas que    comparten parciales o funcionalidad...
Links interesantes:http://rspec.info/rails/writing/views.htmlhttp://rspec.info/documentation/http://guides.rubyonrails.org...
Upcoming SlideShare
Loading in …5
×

Probando las vistas

760 views
729 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
760
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Probando las vistas

  1. 1. Probando las vistas con RSpec::Rails
  2. 2. 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
  3. 3. Te imaginas: WTF!!! ->
  4. 4. Pero, porque no mejor... Usar los Integration o Acceptance Tests para esto. - Son mas lentos - Sera mas dificil saber que falla Usar render_view (integrate_views) en los RSpec:: Controllers - Aislar bugs entre vista/controller Dejarlo para probar manualmente... No probar...
  5. 5. Como? No probar toda la vista, solo elementos claves. Ruby on Rails provee assetors para probar: assert_select assert_select_email assert_select_rjs assert_select_encoded css_select RSpec tambien lo soporta, y es el que usaremos :]
  6. 6. RSpec::Rails Views
  7. 7. Métodos disponibles Conveniences assigns flash, params, session Expectations (response) contain have_tag have_selector have_xpath(ademas match_*, assert_*, assert_not_*) rendered & view helpers
  8. 8. Probemos:#index view:#index_spec.rb
  9. 9. Que mas? share_examples_for Para 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.
  10. 10. Links interesantes:http://rspec.info/rails/writing/views.htmlhttp://rspec.info/documentation/http://guides.rubyonrails.org/testing.html#testing-views Gracias :)

×