2011-06-23 15 views
7

He estado leyendo sobre TDD/BDD desde hace bastante tiempo, pero nunca pude encontrar la manera de implementarlo en un proyecto.Cómo iniciar TDD/BDD PHP CodeIgniter

Ésta es una versión simplificada del proyecto Actualmente estoy trabajando:
Un sitio web que permite a la gente de registro, colocar los libros para la venta. Las personas que necesitan estos libros pueden buscar libros publicados para la venta en las cercanías y enviar un mensaje de correo electrónico al vendedor a través del sitio web.

Esto se está escribiendo en CodeIgniter conmigo como el único desarrollador que trabaja en él. Para este escenario, ¿podría decirme cómo procedería exactamente con las pruebas? ¿Por dónde empezar y qué se probaría?

He estado queriendo hacer esto por bastante tiempo, entiendo el concepto, pero la implementación real me elude, ¡muchas gracias!

Respuesta

3

El probador de unidades que se incluía con la última versión de CI que utilicé era deficiente, solo comprobó si era verdadero o no.

me encontré con este interesante proyecto, que parecía ser mantenido hasta el año pasado, al menos:

http://jensroland.com/projects/toast/

Tal vez hay algo allí para ayudarle a empezar, tal vez en los archivos léame - si no aquí es la publicación original de la que parece haber surgido esta idea.

http://codeigniter.com/forums/viewthread/76703

Se podría empezar por la comprobación de sus modelos de traer de vuelta a un conjunto esperado de valores. es decir, es cierto que "obtener los primeros 10 libros" en realidad trae de vuelta 10 registros; esto significa configurar una base de datos de prueba, y poder configurar (llenar con datos de prueba) y derribar esa base de datos a voluntad. Es un poco complicado, pero en una situación de MVC cuando comienzas con TDD, puede ser lo más sencillo.

TDD (es decir, la idea de desarrollar prueba/código en ese orden) tiene más sentido cuando crea sus propias clases, lo que podría pensar como "ayudantes" en una configuración típica de CI.

Cuestiones relacionadas