2012-06-05 11 views
5

En el trabajo, me han encomendado la tarea de probar nuestro código JavaScript. Me decidí por el marco de prueba de la unidad Jasmine y comencé a aprender cómo usarlo cuando me informaron que ahora estábamos en línea con nuestro código JavaScript dentro de PHP y que ya no usábamos archivos Javascript.Prueba de unidad Código de Javascript Incrustado dentro de PHP

¿Puede Jasmine solucionar este problema? ¿Hay otro marco que podría? ¿Debería usar una prueba de unidad de PHP y una prueba de unidad de Javascript? ¿Cuál sería mi mejor enfoque?

un código de ejemplo desde una página bastante básico para darle una idea:

http://pastebin.com/K3YP33id

http://pastebin.com/QaR8zUh1 < --- presentar

cualquier tipo de penetración sería apreciada

+1

Esa es una situación difícil para estar en (allí mismo). OMI, realmente necesita probar ambos, para el JS probablemente necesite algo como PhantomJS para probar el resultado de JavaScript real de la Solicitud HTTP. – Aknosis

+7

* "ahora estábamos en línea con nuestro código JavaScript dentro de PHP y sin usar archivos Javascript por más tiempo." * ... wow ... ¿quién pensó que era una buena idea ???? – rdlowrey

+0

Aknosis - Investigaré PhantomJS y un marco de pruebas de unidades PHP, ¡gracias por su respuesta! – Goose

Respuesta

1

Mejor la práctica es dividir todos los PHP de javascript y la prueba unitaria por separado. A la larga, se convierte en una pesadilla mantener y probar un código altamente integrado. Intenta modularizar tanto como sea posible.

Por ejemplo, así es como lo haría:

var exampleVariables = { 
    'name' = <?=$name?>, 
    'occupation' = <?=$occupation?> 
}; 

unitTestableFunction(exampleVariables);