5

Mi equipo se lanza de cabeza en un nuevo proyecto y aprovechamos la oportunidad de actualizarnos con la metodología de Scrum, las nuevas tecnologías, etc. Parte de esto implica tratar de automatizar nuestro proceso de control de calidad, utilizando las pruebas de interfaz de usuario codificadas según Microsoft Test Manager y VS2010.Suites de WPF de terceros con pruebas UI automatizadas/codificadas

Sin embargo, estamos teniendo problemas para que la reproducción de prueba automatizada funcione con nuestra biblioteca de control WPF actualmente seleccionada, la suite DevExpress XPF. Hemos usado DevExpress para sus controles WinForms y ASP.NET desde hace años, pero esta es nuestra primera experiencia con sus controles WPF y con las pruebas de UI automatizadas, y las dos parecen no funcionar bien juntas.

En particular, intentar reproducir una prueba grabada que interactúa con un control de cuadrícula nunca funciona bien, e incluso con controles simples, la reproducción parece confundirse con respecto a qué editor debería interactuar. En las grabaciones de acción de nuestro cable de prueba está generando a partir MTM veo un montón de esto:

Type '5236' in 'PART_Editor' text box 
Type '253' in 'PART_Editor' text box 

Y lo que es peor, en el interior de las rejillas:

Click 'FooterPanel' pane 
Last action on list item was not recorded because the control does not have any good identification property. 
Click 'FooterPanel' pane 
Click 'Item: CashEntry, Column ...' custom control 
Move 'Item: CashEntry, Column ...' custom control from (141,  10) to 'Item: CashEntry, Column ...' custom control (5, 11) 
Type '{NumPad8}{Down}{NumPad5}{NumPad0}{Up}{Down}{Down}' in 'CashEntry' window 

Ahora, he visto un montón de charla en Los foros de DevX sobre sus controles WinForms no soportan lo suficientemente bien a MSAA para que funcionen las pruebas de IU codificadas, pero pensé que WPF usaba un mecanismo diferente para las pruebas de IU automatizadas que se suponía que debía funcionar mejor. Entonces, mis preguntas son:

  1. ¿Hay alguna manera de hacer que los controles DevX XPF funcionen mejor con pruebas de UI codificadas/automáticas?
  2. En caso negativo, ¿existe un conjunto de control de XPF alternativo que funcione bien con las pruebas de IU codificadas/automáticas?

Estoy especialmente interesado en un componente similar a una grilla con clasificación, agrupamiento, etc., un componente tipo barra de navegación y editores personalizados (fechas, números, etc.), todos los cuales admiten un sistema unificado tematizando

(Además, si este tipo de cosas es bastante fácil de hacer uso de los controles y los estilos simplemente nativos de WPF, que sería útil saber también.)

EDIT: Ya que no parece haber ninguna Juego de control de WPF que en realidad funciona con MTM, nos vemos obligados a usar dos herramientas de prueba separadas al mismo tiempo. Según varias de las respuestas aquí, nos estamos inclinando fuertemente hacia TestComplete. Esperemos que la situación mejore pronto.

+4

esta es una pregunta muy limitada. uno solo puede esperar que alguien que ha estado en esta situación lo vea. Sugeriría contactar a todas las compañías de la suite de control de WPF y preguntarles ... –

+0

Espero que encuentren lo que necesitan ... – punker76

Respuesta

2

No tengo mucha idea sobre el conjunto de control que admite esto, pero hemos analizado un conjunto de pruebas en el pasado que admite pruebas automáticas basadas en objetos para WPF. Echar un vistazo a TestComplete (aunque no es gratis)

He aquí un extracto de allí sitio de mencionar el apoyo de control que proporcionan -

WPF Control de Soporte TestComplete ofrece un amplio soporte para WPF (XAML) controles y robusto pruebas automatizadas de UI de aplicaciones WPF. Las acciones de prueba de alto nivel de TestComplete, como la selección de elementos o la entrada de datos de la celda , son más conscientes de los objetos que coordenados y por lo tanto son más estables y resistentes a los cambios de la interfaz de usuario cuando se realizan pruebas de WPF . Los esquemas flexibles de mapeo de objetos permiten a los probadores mapear personalizado o controles WPF derivados a tipos estándar para simplificar las manipulaciones UI .El soporte para controles WPF personalizados también se puede agregar usando TestComplete SDK.

http://smartbear.com/products/qa-tools/automated-testing/testing-wpf-apps/

0
  • En uno de los proyectos que hemos utilizado Infragistics controles WPF y TestComplete trabaja con él.

  • Nuestro equipo QS también utilizan TestComplete

  • He encontrado una utilidad gratuita que es independiente de las bibliotecas de interfaz de usuario.

PROJECT SIKULI

Sikuli es una tecnología visual para automatizar y poner a prueba gráfica de usuario interfaces de usuario (GUI) utilizando imágenes (capturas de pantalla). Sikuli incluye Sikuli Script, una API de scripting visual para Jython, y Sikuli IDE, un entorno de desarrollo integrado para escribir scripts visuales con capturas de pantalla fácilmente. Sikuli Script automatiza todo lo que ve en la pantalla sin la compatibilidad interna de la API. Puede programar controlar una página web, una aplicación de escritorio Windows/Linux/Mac OS X, o incluso una aplicación iphone o Android que se ejecute en un simulador o mediante VNC.

+0

Ya hemos codificado las pruebas de IU, simplemente no funcionan con los controles que estamos usando. Eso es lo que estoy buscando: suites de control que funcionan correctamente con pruebas de interfaz de usuario codificadas. –

+0

en uno de nuestros proyectos usamos controles wpf de infragistics y testcomplete funciona con él. ¿Has probado sikuli? – punker76

0

acaba de encontrar este hilo ... tuvimos el mismo problema al utilizar DevExpress componentes, que no se podían encontrar en la reproducción de CUIT. Pero especialmente con el script Sikuli el problema es resuelto ... al menos.

  1. el protocolo de ensayo con MS Administrador de pruebas
  2. prueba de reproducción, para encontrar paso unreproduceble
  3. Crear secuencia de Sikuli a 'pasar por encima'
  4. Incluir creado guión Sikuli en la posición adecuada en el CUIT y empezar de nuevo en el paso 2

Realmente lleva tiempo crear pruebas de esta manera, pero al menos es posible.

Cuestiones relacionadas