Tenemos una aplicación web C#/ASP .NET que es desarrollada e implementada por el servidor de compilación (Jenkins). Uno de los pasos previos a la implementación automatizada es garantizar que todas las pruebas automatizadas pasen, incluidas las pruebas funcionales que tenemos utilizando Selenium 2 WebDriver y NUnit.Tratando con las pruebas de Selenium que fallan ocasionalmente durante la implementación automatizada
El problema: a veces estas pruebas fallan aleatoriamente. Tendrán éxito para 100 construcciones y luego una falla. Fallan por varias razones: un evento .Click() se ignora, no se puede encontrar el elemento, IE tiene un mal día, etc. Tenemos una aplicación web pesada AJAX, por lo que dependemos en gran medida de WebDriverWaits, pero siempre tomamos esto en cuenta mientras escribo las pruebas, y como dije, las pruebas pasan la mayor parte del tiempo.
¿Cuáles son algunas maneras de evitar o solucionar este problema? Una pareja que vino a la mente:
- aceptar un cierto número de fallos (parece una mala idea)
- fallos de las pruebas Volver a ejecutar?
Gracias, me gusta la idea de 'probar en remojo' - después de hacer (y tomar capturas de pantalla) que vi que algunas de las pruebas siempre fallan en el mismo lugar, así que las echaré un vistazo más de cerca. – Kryptic
@Kryptic Interesante. Estoy lidiando con algo similar yo mismo. ¿Hay algún patrón que recuerdes encontrar durante esa mirada más cercana a esas pruebas escamosas? – anjunatl