FAQ |
Login

Aplicar TDD en front-end

Layer-visible-off
1
Unfavorites
0

Estimados, en nuestra empresa aplicamos TDD a nuestro desarrollo, lo cual nos ha resultado muy bien mientras hablamos del backend.

El problema es que nuestro software tiene una complejidad no menor en el front-end, pero cada vez que hacemos cambios hay que pobarlos a mano, pues no hemos logrado hacer algo así como TDD o BDD.

En particular ocupamos JQuery y hemos probado QUnit, pero hasta el momento nos ha servido básicamente para validaciones de cálculos realizados con JQuery y no tanto el comportamiento.

Mi pregunta es doble: ¿El enfoque de hacer tests en la interfaz es el correcto? ¿Alguien ha tenido el mismo problema y tiene alguna solución o enfoque que le haya resultado exitoso?

Saludos


1

Hola,

Intentando responder a tus preguntas, creo que si es correcto hacer pruebas unitarias a cualquier parte de código que generes, de hecho, paso el dato, en el grupo ALT.NET Hispano, pronto habrá una VAN, sobre este tema, igualmente pueden verla off-line en la sección de históricos.

Ahora, si tienes muy enlazado la presentación con el comportamiento de tu sistema, creo que mejor te conviene hacer pruebas de integración con Selenium o alguno otro.

Para mejorar esto podrías ver la posibilidad de implementar algún patrón (MVC, MVVM) que te ayude a separar el comportamiento de la presentación misma.

Saludos Alejandro Labra @alabras

Answered 6 months ago
alabras 4
from unknown
6 months ago riesco said:
 

Muchas gracias!

Un poco para acotar la pregunta, ya tenemos la vista separada de la lógica, de hecho JQuery recibe prácticamente puros datos “JSON” para mostrar/esconder cosas. El problema es que a veces hay que hacer redirecciones, cambiar estados, mostrar iconos, ocultar cosas y mi duda es 1) Si conceptualmente ese tipo de cosas se puede testear y 2) Como hacerlo si es que tuviese sentido.

En el caso de que no tenga sentido, bueno sigo haciendo esas “pruebas” a mano, pero cade vez que hago cambios en la interfaz finalmente termino recorriéndola completa nuevamente, lo cual se ha hecho cada vez más largo.

Voy a intentar con Selenium, a ver si esa es la opción. Slds


0

En Rails ocupamos Capybara. Otra herramienta que les puede resultar útil es Jasmine.

Saludos!

Answered 6 months ago
matias.quaglia 2
from unknown

0

TDD para front-end todavía es limitadísimo. Lo que hago son los testes más amplios (funcionales/integración/aceptación). Así mismo son terriblemente frágiles.

En Rails, también uso capybara. En Java, japybara (obviamente inspirado por el capybara, pero todavía embrionario).

Railscast tiene un video muy interesante sobre testes (incluye front-end, con tdd, capybara, etc).

updated 6 months ago
gandralf 14
from unknown
Answered 6 months ago
gandralf 14
from unknown

never shown