2014-10-14 5 views
6

In meinem Robot-Skript sind insgesamt 10 Testfälle im Abschnitt Testfälle voreingestellt. Test1 ist unabhängig und muss nicht ständig ausgeführt werden. Einmalige Ausführung ist genug.Wie überspringe ich einen bestimmten Testfall im Robot-Framework?

Bitte schlagen Sie vor, wenn es ein Schlüsselwort gibt, das nur testcase1 überspringen würde.

Wenn Benutzer jedoch interessiert ist, das Skript einschließlich testcase1 auszuführen, muss Benutzer in Befehl wie etwas wie pybot <scriptname> "add testcase1" angeben.

testcase1 
.... 
.... 

testcase2 
.... 
.... 

testcase3 
.... 
.... 

testcase10 
.... 
.... 

Antwort

6

Es gibt kein Schlüsselwort zum Überspringen eines Tests. Wenn Sie zur Laufzeit feststellen müssen, ob ein Test ausgeführt werden soll, besteht Ihre einzige Möglichkeit darin, sofort zu versagen oder zu passieren, ohne weitere Arbeit zu leisten. Der Roboter unterstützt einfach keine Springtests, sobald die Tests gestartet wurden.

Es gibt jedoch eine Befehlszeilenoption, mit der Sie Tests nach Tags überspringen können. Dies ist eine sehr mächtige Eigenschaft des Roboters. Weitere Informationen finden Sie unter Selecting test cases im Benutzerleitfaden für den Roboterrahmen.

Betrachten wir zum Beispiel die folgende Test-Suite:

*** Test Cases *** 
| Test case 1 
| | [Tags] | run-once 
| | log | this is test case 1 

| Test case 2 
| | log | this is test case 2 

Um alle Tests laufen Sie dies tun würde:

$ pybot example.robot 

Wenn Sie den ersten Test überspringen wollte können Sie die --exclude verwenden Option:

$ pybot --exclude run-once example.robot 

Wenn Sie nur den ersten Test ausführen möchten, können Sie expli zitieren Sie es, das nur die Tests laufen lässt, die dieses Tag haben:

$ pybot --include run-once 
Verwandte Themen