Estoy usando White para automatizar las pruebas BDD de nuestra UI C# WPF.Blanco UIAutomation clic() deja de funcionar en plataforma diferente
Mi primer par de pruebas funcionan bien en mi máquina de desarrollo (con Windows 7). Sin embargo, cuando intento ejecutar el mismo código en el servidor de compilación (máquina virtual que ejecuta Windows Server 2003 R2), no funciona correctamente. En ambos casos, las pruebas se ejecutan desde la línea de comandos y las pruebas utilizan el marco Cuke4Nuke. En el caso del servidor, estoy accediendo al servidor a través de Conexión a Escritorio remoto.
El código es el siguiente:
var application = Application.Launch("whiteApp.exe");
var initializeOption = InitializeOption.NoCache;
var windowCriteria = SearchCriteria.ByText("whiteApp");
var window = application.GetWindow(criteria, initializeOption);
var criteria = SearchCriteria.ByAutomationId("rightButton");
var button = (Button) window.Get(criteria);
button.click();
El problema es que los botones de clic evento no se dispara cuando se ejecuta en el servidor. Se puede hacer clic en el botón (usando el mouse) si la interfaz de usuario se deja abierta después de que White haya terminado de ejecutarse. Un punto interesante es que una vez que se ejecuta el método de clic, el botón muestra evidencia de que se ha hecho clic en él, como en la siguiente imagen, en el caso de otros botones, se muestra el efecto de mouse over.
Muchas gracias, aunque esto no funcionó. Lo completé en Server 2003 R2 vm como x86 y lo ejecuté en vano. Gracias de cualquier manera. – Klee
Tenía exactamente el mismo problema y el cambio a 32 bits lo resolvió. ¿Estás seguro de que construiste _tests_ (no la aplicación real) para x86? –
Puedo confirmar que la creación de la aplicación de automatización/aplicación de prueba para x86 me sirvió de algo. ¡Gracias! –