2011-09-14 12 views
5

Sto provando a impostare i test automatici della GUI nelle macchine virtuali ESXi utilizzando TestComplete. Il problema, a quanto ho capito, è che quando non viene effettuata alcuna connessione desktop remoto alla macchina virtuale ESXi, per TestComplete è impossibile eseguire acquisizioni di schermate e quindi automatizzare la verifica della GUI. Per quanto ho capito, questo è dovuto al fatto che Windows non genera alcuna interfaccia utente quando nessuno la sta visualizzando.Come eseguire test GUI automatizzati su una macchina virtuale ESXi headless remota?

Sono sicuro che altri hanno riscontrato questo problema. Come l'hai risolto ? Stai utilizzando un computer di terze parti che avvia automaticamente le connessioni desktop remote prima di eseguire i test?

Sarebbe possibile avviare un desktop remoto da una macchina virtuale senza testa a un'altra per simulare la visualizzazione di qualcuno?

Altre soluzioni più intelligenti a cui non avessi pensato?

risposta

6

Si dovrebbe essere in grado di accedere a Windows su console della VM utilizzando il client vSphere, quindi chiudere vSphere, e la volontà di Windows credono ancora che l'utente sta visualizzando la console. Semplice come quella. :)

Quindi non ci dovrebbe essere la necessità di coinvolgere il desktop remoto nel mix.

Fintanto che i test vengono eseguiti come utente Windows connesso, si dovrebbe andare bene.

Questa tecnica ha sempre funzionato per me con un certo fascino con alcuni test di automazione di Watir, Selenium e MS UI che dipendono dall'avere un desktop interattivo.

Se è necessario riavviare il VM automaticamente prima/durante il test, invece di registrare manualmente nel client vSphere, si può fare di Windows eseguire il login come un utente arbitrario automaticamente - controllare il comando "controllo userpasswords2", oppure si può utilizzare lo Sysinternals app "Autologin":

http://technet.microsoft.com/en-us/sysinternals/bb963905

cattura Solo con questa tecnica è che è necessario essere in grado di lanciare i test, mentre non visualizzazione della console sul VM, ma suona come hai già preso cura di quello?

Se è necessaria una soluzione per l'avvio remoto dei test, si consiglia vivamente di utilizzare Jenkins o Hudson per avviare test/raccogliere i risultati dalla VM. Jenkins ha cambiato la mia vita in questo senso.

+0

Questi sono ottimi consigli e sembra che risolverà completamente i miei problemi. Grazie! – jonjbar

1

Si può considerare l'utilizzo della funzionalità di rete Suites di TestComplete: http://smartbear.com/support/viewarticle/16849/

E 'possibile aprire connessioni desktop remoto sul proprio, metodi di controllo PC remoti, e tirare i registri di nuovo al progetto "master". Questa funzione è progettata per essere utilizzata per test distribuiti e sembra che sia proprio ciò di cui hai bisogno.

Per quanto riguarda l'apertura di RDP a una VM senza testa, non dovrebbe essere un problema: tocca a Windows "pensare" a questo. È sufficiente aprire RDP e funziona anche se non è collegato alcun monitor al PC/VM remoto.

Spero che questo aiuta, Alex

+0

Questo aiuta anche se la risposta di Bill sarà più facile/più economica per le mie esigenze. Grazie. – jonjbar

0

È sempre possibile utilizzare VNC selezionando l'opzione "Non fare nulla" quando si disconnette il visualizzatore. In questo modo ingannerai windows per generare l'immagine.

Problemi correlati