Pruebas de IU automatizadas, vinculadas a TFS y codificadas en todos los navegadores

Estoy buscando una herramienta de prueba de interfaz de usuario web que:

A. Puede probar al menos IE, Firefox, Chrome y Safari;

B. No depende de la "grabación" y puede codificarse puramente;

C. Puede extraer tablas de datos de casos de prueba TFS para entradas;

D. Puede fallar los pasos de prueba a través del código (o tiene la capacidad de hacer llamadas a la API de TFS para hacerlo yo mismo)

Un problema es que muchas suites no funcionan en Safari, y uno de nuestros principales datos demográficos es un iPad Kiosk'd con Safari.

Otras suites son solo Acciones grabadas, o su "conversión a código". No puedo entender cómo omitir y hacer solo en código.

No puedo encontrar nada que pueda fallar en un paso de prueba. Es posible que tenga que codificar esa parte yo mismo usando la API de TFS.

Respuestas (1)

Sikuli es una herramienta de prueba multiplataforma, basada en Python, que puede utilizar el reconocimiento visual de los elementos de la interfaz de usuario para decidir a) en qué hacer clic y b) cuáles son los resultados. Puede generar resultados de Aprobado y Reprobado y puede agregar casi cualquier código python en cada paso de la prueba.

Dado que busca componentes visuales, debería funcionar para casi cualquier navegador.

Impresionante sugerencia. Pero odio decir que no cumple con el punto B. Se basa en capturas de pantalla y presentación. Estoy buscando un producto que sea codificación pura, que por proxy significa que tiene que usar el DOM. Aunque estoy algo impresionado por la utilidad de Sikuli.
@Suamere se basa en reconocer elementos de pantalla (no capturas de pantalla), la buena noticia sobre ese enfoque es que no necesita acceso a la fuente, dom u otro código de bajo nivel, como ID de elementos, si tiene acceso a la símbolos de botón, etc., luego puede generar a partir de código puro; también puede generar sus pruebas en un navegador y luego ejecutarlas en varios otros. NB: he visto páginas web en las que los botones tenían identificadores pero no estaban visibles: el enfoque DOM no les fallaría aunque no se pudieran usar.