unit testing - unitarias - Buscando las formas para la automatización de prueba del sitio web
unit testing c# (9)
Desarrollamos sitios web de encuestas personalizadas y estoy buscando una forma de automatizar las pruebas de patrones de estos sitios. Las encuestas a menudo contienen muchas reglas complejas y ramas que se desencadenan sobre cómo se responden los elementos también. Todas las encuestas se prueban rigurosamente antes de ser lanzadas a los clientes. Esta prueba da como resultado mucho trabajo manual. Me gustaría conocer algunas opciones que podría utilizar para automatizar estas pruebas respondiendo preguntas y verificando los resultados en la base de datos. Los sitios de la encuesta son producidos por un motor que crea y escribe páginas asp y recibe las respuestas para procesar en una base de datos. Entonces, la única manera que puedo determinar para probar el sitio es interactuar con las páginas web. Supongo que de alguna manera necesito construir algún tipo de bot; Realmente no sé mucho sobre el diseño detrás de ellos.
¿Podría alguien dar algunas sugerencias sobre cómo lograr esto? Gracias por tu tiempo.
Brett
Consulte el marco de prueba de la unidad ''lime'' que viene con el marco de Symfony. http://www.symfony-project.org/book/1_0/15-Unit-and-Functional-Testing . No mencionaste tu idioma, lime es php.
Parece que tu motor podría generar un script de prueba usando algo como Test :: WWW :: Mechanize
Puedo pensar en un par de suites de prueba de aplicaciones web que deberían hacer el trabajo: una fuente gratuita / abierta y una comercial:
- Selenio (fuente abierta / plataforma cruzada)
- TestComplete (comercial / basado en Windows)
Ambos le permitirán crear conjuntos de pruebas al verificar los registros de la base de datos en función de las interacciones con la aplicación web.
El hecho de que esté basado en Windows / ASP podría significar que TestComplete lo pondrá en funcionamiento más rápido, ya que es nativo de Windows y .NET. Puede descargar una versión de prueba para ver si funciona antes de realizar la inversión.
Se aplican metodologías de prueba habituales; caja blanca y caja negra.
Las pruebas de caja blanca para usted pueden significar instrumentar su aplicación para poder pasar a un estado particular, luego puede predecir el resultado que espera.
El recuadro negro puede significar que tocas una página y luego considerar los posibles resultados válidos. Repita y enjuague hasta que obtenga suficiente cobertura.
Otra cosa que utilizamos es monitorear las estadísticas de nuestro servicio. ¿Recibimos el número esperado de visitas en esta página? Realizamos rutinariamente pruebas a / b, y realicé pruebas a / b contra código refactorizado para verificar que nada haya cambiado antes de lanzar las cosas.
/Alano
Sugeriría la gema mecanizada, disponible para rubí. Es bastante intuitivo de usar.
También puedes ver WatiN .
Uso el QEngine (comercial) para el mismo propósito. Necesito agregar datos y verificarlos en la interfaz de usuario. Escribo un script que hace esto y lo llamo en un bucle. los datos se pueden pasar a través de csv o excel. compruebe que www.qengine.com, también puede probar Watir.
Mi propuesta es QA Agent ( http://qaagent.com ). Parece que este es un nuevo enfoque porque no necesita instalar nada. Simplemente desarrolle sus pruebas web en el ide basado en navegador. Por cierto, puedes desarrollar tus pruebas usando jQuery y script java. ¡Realmente genial!
Echa un vistazo al selenio: http://selenium.openqa.org/
Además, consulte las respuestas a esta otra pregunta: https://.com/questions/484/how-do-you-test-layout-design-across-multiple-browsersoss