2008-08-24 31 views
45

Estoy familiarizado con nunit para pruebas unitarias de la capa empresarial, pero ahora estoy buscando automatizar la prueba de la capa gui de win forms.¿Hay alguna forma de automatizar las pruebas de Windows Forms?

He visto watin y la grabadora watin para automatizar las pruebas de la aplicación web accediendo a los controles y automatizándolos. Sin embargo, estoy luchando por encontrar un equivalente de watin para los formularios de Windows (escrito en C# o vb.net), preferentemente, es de código abierto.

¿Existe uno o todos los productos están basados ​​en la grabación de prensas de mouse y teclado?

Actualización: He visto este blog post on white y parece el tipo de cosa que estoy buscando. La publicación del blog plantea algunos problemas, pero como el blanco solo está en la versión 0.6, se pueden resolver. Se interesará si otros han usado blanco o cualquier otro para comparar.

Respuesta

7

AutomatedQA's TestComplete es una buena aplicación de prueba para automatizar las pruebas GUI. También es compatible con más formularios que Windows Forms, por lo que puede reutilizarlo para otras aplicaciones. No es de código abierto y esto es lo mejor que he encontrado. No he visto una fuente abierta equivalente a WatiN. Tiene una versión de prueba gratuita, para que usted decida si le gusta o no. La razón principal por la que lo hice, es que realmente es rentable, en comparación con otras aplicaciones de prueba.

0

se puede consultar el marco Microsoft UI Automation. Esto se ha incluido en .NET desde la versión 3.0. Esto es en realidad lo que el marco blanco usa de todos modos.

2

Por lo que sé, White es una capa de abstracción en la parte superior del marco UI Automation de Microsoft. He escrito una capa similar que usamos internamente en nuestros proyectos y funciona muy bien. Definitivamente, White valdría la pena verlo

Microsoft ha lanzado la fuente para la automatización de la interfaz de usuario, por lo que si es necesario, podrá depurar toda la pila si es necesario.

Lo realmente genial es que con el costo de licencia, puede escalar y ejecutar tantas máquinas como desee para su ejecución.

Corremos dentro de VSTS y vinculamos nuestros resultados a los requisitos, pero puede usar C# express y nUnit y obtener herramientas e idiomas de primera clase por poco o ningún costo.

2

Éstos son algunos enlaces de MSDN Magazine en código de prueba automática:

  • Usando UIAutomation Bugslayer de marzo de de 2007
  • uso de PowerShell Test Run de diciembre de de 2007
  • Tester, una utilidad para el registro de clics del ratón y las pulsaciones de teclado, a continuación, reproduciéndolos & comportamiento de comprobación del programa. Excelente para código no administrado. Usa los identificadores de ventanas, por lo que puede que no funcione bien para el código administrado. Bugslayer Marzo de 2002.
4

Como una nueva alternativa, puedo darte FlaUI (https://github.com/Roemer/FlaUI). Básicamente es una re-escritura completa de blanco con más características y una base de código limpia.

0

Es posible considerar el uso de Coded UI, un Visual Studio característica incorporada y parte de la UI Automation:

pruebas automatizadas que impulsan su aplicación a través de su interfaz de usuario (IU) son conocidos como interfaz de usuario codificados pruebas (CUIT). Estas pruebas incluyen la prueba funcional de los controles UI. Le permiten verificar que la aplicación completa , incluida su interfaz de usuario, funcione correctamente al . Las pruebas de interfaz de usuario codificadas son particularmente útiles cuando existe una validación u otra lógica en la interfaz de usuario, por ejemplo, en una página web . También se utilizan con frecuencia para automatizar una prueba manual existente .

[...] una típica experiencia de desarrollo podría ser uno donde, en un principio, sólo tiene que generar la aplicación (F5) y haga clic a través de la interfaz de usuario controla para verificar que las cosas están funcionando correctamente. A continuación, puede decidir crear una prueba codificada para que no tenga que seguir probando manualmente la aplicación . Dependiendo de la funcionalidad particular que se prueba en su aplicación, puede escribir el código para una prueba funcional o para una prueba de integración que puede o no incluir pruebas en el nivel de IU . Si simplemente desea acceder directamente a alguna lógica comercial, , puede codificar una prueba unitaria. Sin embargo, en determinadas circunstancias, puede ser beneficioso para incluir pruebas de los diversos controles de IU en su aplicación. Una prueba de IU codificada puede automatizar el escenario inicial (F5) , verificando que la desconexión del código no afecte a la funcionalidad de su aplicación.

Leer más en: https://docs.microsoft.com/en-us/visualstudio/test/use-ui-automation-to-test-your-code

Cuestiones relacionadas