Pregunta

Gracias a una actualización de la biblioteca (easymock 2.2 - > 2.4), tenemos pruebas que comenzaron a bloquearse. Me gustaría tener un tiempo de espera en las pruebas individuales, todas ellas. La idea es identificar las pruebas bloqueadas (actualmente estamos adivinando) y corregirlas.

¿Es esto posible, preferiblemente a nivel de toda la suite? Tenemos 400 pruebas, hacer esto cada método o incluso cada clase llevará mucho tiempo.

¿Fue útil?

Solución

El suite tag puede tener el atributo de tiempo de espera. Este tiempo de espera se utilizará de manera predeterminada para todos los métodos de prueba.

Este tiempo de espera predeterminado puede anularse según el método de prueba.

Otros consejos

Si el nivel de Suite resulta ser un enfoque incorrecto (es decir, & "; una red demasiado amplia &"; porque termina marcando demasiados métodos con un límite de tiempo de espera), debe definir un IAnnotationTransformer personalizado que, para cada función ilegible, le dará la oportunidad de modificar una anotación @Test (con, por ejemplo, la método setTimout () ).
(setTimout(0) cancela una directiva de tiempo de espera)

Muy tarde, pero: ejecutar jstack -l <PID> le dará el volcado de la pila, que puede inspeccionar para encontrar qué llamadas están bloqueadas. Es posible que desee probar algunas veces para asegurarse de que estén atascadas.

Puede hacer una búsqueda y reemplazar " @Test " con " @Test (timeout =) " Debería funcionar para encontrar la prueba bloqueada y se puede deshacer después de eso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top