2010-04-23 17 views
5

Estoy buscando recursos TDD que sean específicos de Rails.Test Driven Development (TDD) con Rails

que he visto en los carriles de guía: The Basics of Creating a Rails Plugin que en realidad estimuló mi interés en el tema.

Tengo el desarrollo ágil con el libro Rieles y veo que hay un poco de información relacionados con las pruebas allí. Sin embargo, parece que el autor lo guía por los pasos para crear la aplicación y luego agrega las pruebas. Esto no es realmente Test Driven Desarrollo.

Idealmente, me gustaría un libro sobre esto, pero una colección de otros tutoriales o artículos sería genial si tal libro no existe.

cosas que me gustaría aprender:

  • Objetivo principal: Buenas Prácticas
  • Prueba de la unidad
  • cómo utilizar accesorios
    • usando Posiblemente los datos de desarrollo existentes en el lugar de accesorios
      • ¿Cuál es el estándar de la comunidad aquí?
  • pruebas de escritura para los plugins
  • de pruebas con datos de la sesión
    • usuario está conectado
    • usuario puede acceder a la URL/foo/bar
  • Pruebas de cambios en los datos
    • Actualizaciones del autor publicar
    • El estado del producto se ha cambiado a un pedido pendiente
    • El usuario compra el producto (¿comportamiento?)
      • usuario se registra en
      • usuario tiene la dirección y una tarjeta de crédito válida
      • se hace registro Ordenar
      • crédito historial de transacciones de tarjeta actualiza
      • Enviar correo electrónico al usuario
  • Éxito de prueba de envío de correo electrónico
  • Pruebas de AJAX
    • Posiblemente probar la funcionalidad general de jQuery (Elementos de la interfaz, etc.)
  • RSpec
    • Qué lugar tiene RSpec en una aplicación Rails
  • El futuro de las pruebas
    • ¿Adónde van las pruebas? ¿Qué cosas están saliendo?
    • ¿Qué patrones se utilizarán en Rails 3?

Gracias por cualquier ayuda!

+0

Echa un vistazo a esta respuesta de una publicación similar: http://stackoverflow.com/questions/1386562/how-to-get-started-on-tdd-with-ruby-on-rails/6243865#6243865 – sivabudh

Respuesta

2

The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends. Se centra en BDD en lugar de TDD, pero ese es el objetivo de RSpec y Cucumber. No es completamente específico de Rails, pero tiene varios capítulos dedicados a él. Bien escrito y actualizado (aunque todavía está en beta).

+0

¿Cómo funciona? BDD se compara con TDD? ¿Sus argumentos sugieren que uno es mejor que el otro? ¿O simplemente cubren cosas diferentes? –

+0

Iba a sugerir esto también: realmente el estado del arte en el mundo de Rails. BDD y TDD están estrechamente relacionados, cada uno se aproxima al mismo problema desde un ángulo diferente. rSpec es realmente un marco de prueba construido en una DSL que produce "intenciones" legibles por humanos. –

+0

Esa es una buena descripción. También diría que TDD aborda las pruebas desde una perspectiva interna, es decir.la del codificador, mientras que BDD aborda las pruebas desde una perspectiva externa: la perspectiva del interesado o cliente. La salida de las mejores herramientas BDD se aproxima a una especificación de requisitos que se puede entregar a un cliente. – zetetic

1

Esta es una pregunta más viejo, pero me agregará que el Learn Rails by Example de Michael Hartl lleva al usuario a través de TDD y cubre la mayoría de las viñetas mencionadas en la pregunta original.

También agregaré que Everyday Rails Testing with RSpec es una gran compra, especialmente porque el autor pone a disposición de los clientes actualizaciones gratuitas después de que ya compraron el libro, y planea actualizar nuevamente a la luz del lanzamiento de Rails 4.