La manipulación de cajas de diálogo SWT mientras realiza las pruebas en modalidad autónoma utilizando SWTBOT

StackOverflow https://stackoverflow.com/questions/1907646

Pregunta

Me postulo un caso de prueba Junit en mi solicitud eclipse que fue construido usando SWT. Estoy haciendo pruebas de interfaz gráfica de usuario utilizando SWTBot. Por lo tanto, aquí está mi problema:

editor.bot().button("Make Excel Template").click();

Este código ayuda a generar una plantilla en mi solicitud. Una vez hecho esto, se lanza un diálogo modal con "OK" como un mensaje. Sin embargo, no puedo conseguir SWTBot de encontrar esta caja de botones / Widget / diálogo. Sigo recibiendo un 'WidgetNotFoundException'.

¿Alguien ha llegado a través de esto? contenido oficial en la página web SWTBot dice que los cuadros de diálogo se deben ejecutar en la interfaz de usuario hilos no separados. Los ejemplos que, sin embargo, no son muy informativos.

Agradecemos su ayuda!

¿Fue útil?

Solución 2

@carstenlez - su solución funciona bien para las cajas de diálogo JFace. Mi aplicación, sin embargo, está haciendo uso de un cuadro de mensaje - que es un cuadro de diálogo nativo. SWTBot no soporta diálogos nativos, así que estoy bastante fuera de opciones.

Otros consejos

En primer lugar debe ejecutar las pruebas en un no-UI-hilo (si no lo están haciendo ya). En segundo lugar se puede utilizar una condición para esperar su diálogo modal que aparezca después de ejecutar la acción que traerá el diálogo de arriba:

bot.waitUntil(Conditions.shellIsActive("This is the title of the modal dialog "));
bot.button("OK").click();

Esto soluciona nuestros problemas de tiempo.

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