2008-09-23 8 views
36

¿Cuál es la mejor manera de probar mis aplicaciones de formularios web?¿Cuál es la mejor forma de probar las aplicaciones de formularios web (ASP.NET)

Parece que la gente ama el Watin y el selenio.

+1

posible duplicado de [¿Cuál es la mejor manera de hacer pruebas unitarias para páginas web ASP.NET 2.0?] (Http://stackoverflow.com/questions/4363/what-is-the-best-way- to-do-unit-testing-for-asp-net-2-0-web-pages) –

+1

Si esta pregunta se cierra como un duplicado, las respuestas excelentes deben fusionarse. –

+0

Selenium 2 con WebForms se pone un poco tedioso. Creé algunos métodos de envoltura que lo hacen un poco más fácil. http://www.foliotek.com/devblog/simplifying-c-selenium-2-tests-for-asp-net-webforms/ – Narnian

Respuesta

18

ACTUALIZACIÓN: Dada WatiN ha estado estancado durante más de un año, me dirigiría cualquier persona que necesite pruebas de interfaz de usuario web hacia selenium, es en uso continuo & el desarrollo de muchos colaboradores, y se utiliza de forma activa por parte de Google.

WatiN es lo mejor que he encontrado. Se integra en la unidad de pruebas de Visual Studio o nunit & que puede hacer casi cualquier cosa que necesite en el navegador (pulse en los enlaces, enviar formularios, buscar texto/imágenes, etc.)

Ver las siguientes preguntas para respuestas similares:

+0

Tengo que aprender a escribir más rápido ... buena sugerencia – JustinD

+8

¿No es esa integración/prueba de aceptación mientras se ejecuta en el navegador? –

+1

WatiN no es una herramienta de prueba de unidad – khebbie

0

me gustaría utilizar un a ol como WaitIn:

"WatiN es Web Application Testing en .NET, y este Test Recorder generará trozos de fuente registrando sus clics en un navegador IE incorporado" (de Scott Hanselman's blog - que encontré gracias a otra publicación en StackOverflow

WaitIn website

+0

WatiN no es una herramienta de prueba de unidad – khebbie

15

Ese es el defecto más grande de formularios web - es, por todas las razones prácticas, no comprobable en términos de la unidad de pruebas de pruebas de los controladores, etc.

Esa es una de las principales ventajas de el marco MVC.

+3

No estoy seguro de por qué sufrió tanto downvoted, creo que incluso muchos en Microsoft estarían de acuerdo (de ahí el énfasis de prueba de unidad grande en MVC). Tener que usar una herramienta que abre un navegador web para probar el código que se ejecuta en el servidor abre una tonelada de otras posibles fallas y no le permite aislar las pruebas a las unidades reales de código. –

+3

Acabo de votar (para la información), sin embargo, los votos abajo tienen sentido aquí porque la pregunta es cuál es la mejor forma de probar los formularios web de prueba. La discusión de las fortalezas de MVC no beneficia a esa pregunta. –

+0

@TomLianza porque esto no responde a la pregunta – BigOmega

0

Me gustaría ir con WATIR (Web Application Testing en Ruby) - http://wtr.rubyforge.org/. Nosotros (Acsys Interactive) hemos estado usando durante aproximadamente un año y la herramienta es excelente.

Desarrollé un contenedor simple en .NET para que pueda ejecutar mis scripts WATIR a partir de pruebas unitarias. El marco es increíble y tienes todo el poder de Ruby detrás de ti. Hay soporte para Firefox & Safari (proyecto FireWatir).

Es muy similar a WATIN (de hecho, creo que WATIN se inspiró en WATIR) pero me parece que la comunidad WATIR es mucho más grande que WATIN.

Hay grabadoras de prueba que puedes usar y un montón de tutoriales.

Es realmente su elección. Si cree que las pruebas deben estar en .NET y no desea admitir ningún otro idioma, entonces su elección es WATIN. Por otro lado, si quieres probar un lenguaje de scripting divertido y bastante poderoso (eso es lo que es Ruby), entonces ve a WATIR.

Pregunta a WATIN chicos, ¿es compatible con FireFox/Safari?

+0

Sí, es compatible con FireFox – asyncwait

0

Aquí es una revisión de Watin, Watir y selenio http://adamesterline.com/2007/04/23/watin-watir-and-selenium-reviewed/

Al parecer selenio funcionó bastante lento para el probador, pero si te fijas, como uno de los comentarios que señala, que esto es sólo el caso debido para su soporte de múltiples navegadores.

Sin embargo, hay una versión CTP (Community Technology Preview) de WatiN que ofrece soporte para la automatización de Internet Explorer y FireFox.

29

Solo me pregunto, ¿por qué llamaría a WatiN una unidad herramienta de prueba? La última vez que lo comprobé, ejecutó pruebas de integración.

La mejor manera sería mover todo el código que no depende de HttpContext a un ensamblaje separado y ejecutar las pruebas unitarias como de costumbre. El resto se puede probar con Ivonna. Ella no prueba el comportamiento del cliente, ahí es donde WatiN puede ser útil; Sin embargo, si desea probar sus páginas o controles de forma aislada, ella es su única opción.

+5

Esta debería ser la respuesta aceptada. La respuesta aceptada es incorrecta. – youwhut

Cuestiones relacionadas