2008-09-15 15 views
1

Meine ersten Tests haben gezeigt, dass Robot ohne einen aktiven, sichtbaren Desktop nicht funktioniert. Während beispielsweise ein geplanter Task (oder ein vom Slave mit kontinuierlicher Integration ausgeführter Befehl) möglicherweise den Roboter als Befehlszeilenprozess starten kann, kann Robot das aufgezeichnete Skript nicht ausführen.Regressionstest mit Rational Robot

Anmeldung in der Build-Maschine, um es einen "aktiven Desktop" zu ermöglichen, ist keine akzeptable Lösung.

Fehle ich etwas? Ist es möglich, ein voraufgezeichnetes Rational Robot-Skript auf einem Continuous Integration Server so auszuführen, dass die Maschine nicht physisch angemeldet werden muss?

Antwort

0

Sie können Rational Robot über die Befehlszeile ausführen. Daher sollten Sie in der Lage sein, eine geplante Aufgabe einzurichten, um eine .BAT-Datei auszuführen, um dies für Sie auszuführen. Der Befehl ist so etwas wie:

[Pfad zu Rational Robot] \ rtrobo [Skriptdatei]/user "Benutzername"/Projekt [Projektdatei]/Play/build "bauen Name"/nolog/close

Die Robot-Dokumentation enthält andere Argumente, die Sie abhängig von Ihrer Situation weitergeben können.

Wenn eine einfache geplante Aufgabe nicht funktioniert, können Sie versuchen, eine STAF-Umgebung (http://staf.sourceforge.net/index.php) einzurichten und einen Job zu erstellen, um dies auszuführen.

Viel Glück :)

+0

Danke für die Antwort. Ich habe eine Klarstellung hinzugefügt. Die ursprüngliche Frage war bewusst vage, um die Bearbeitungsfunktionen und den Prozess von StackOverflow zu testen. Ich kenne die Befehlszeilenfunktionen, aber das Fehlen eines Live-Desktops scheint die Testfähigkeit von Robot zu beeinträchtigen. – Chad

1

Leider Roboter erfordert, dass Sie an der Maschine angemeldet sind und dass der Desktop nicht gesperrt ist.

Also, nein, Sie verpassen nichts.

Je nach Ihrer Situation können Sie das Problem möglicherweise umgehen. Können Sie klären, welche Art von Anwendung Sie testen möchten? Wenn es sich um eine Web-App oder eine Client-App handelt, die einfach installiert/kopiert werden kann, kann Robot möglicherweise auf einem VMware-Image ausgeführt werden, anstatt direkt auf dem Build-Server selbst.

+0

Unsere App ist leicht zu installieren. Wir werden bereits auf einer virtuellen Maschine laufen, wobei die Tests von einem Continuous Integration Server gestartet werden. Willst du damit sagen, dass es eine Möglichkeit gibt, ein VMware-Image zu starten, das "eingeloggt" ist, wenn der Server, der es startet, nicht "eingeloggt" ist? – Chad

+0

Ja, genau das sage ich. –

Verwandte Themen