Pregunta

A menudo, quiero escribir una prueba unitaria para una parte del código que accede a recursos HTTP como parte de su función normal.¿Ha encontrado alguna buena forma de escribir este tipo de pruebas?

¿Fue útil?

Solución

Extraiga la parte que accede a los recursos HTTP de su código principal.Cree una interfaz para ese nuevo componente. En su prueba, simule la interfaz y devuelva datos que pueda controlar de manera confiable.

Puede probar el acceso HTTP como prueba de integración.

Otros consejos

Esta es típicamente una función que me burlaría de las pruebas...No me gustan mis pruebas dependiendo de nada externo...peor aún si se trata de un recurso externo sobre el que no tengo control (como un sitio web de terceros).

Las bases de datos son uno de los pocos recursos externos de los que a menudo no me burlo...Yo uso DBUnit en su lugar.

Recientemente tuve que escribir un componente que accedía a una wiki y extraía un poco de texto básico.La mayoría de las pruebas que escribí validaron el código de respuesta HTTP correcto.En lo que respecta a validar el recurso real, guardaría una versión fuera de línea de un recurso conocido y verificaría que el algoritmo esté recopilando/procesando los datos correctos.

Dependiendo del lenguaje o marco que esté utilizando, puede resultar sencillo iniciar un servidor HTTP que se ejecute localmente y que proporcione los recursos que desea.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top