Fachtests mit dem Robot Framework in der Muttersprache schreiben

Keine Kommentare

Bei akzeptanztest-getriebener Entwicklung formuliert das Team die Tests in der Regel so, dass ein Verhalten erst spezifiziert wird, um dann mit Beispielen unterfüttert zu werden. Wie das allgemein mit dem Robot Framework umgesetzt werden kann, haben wir hier schon früher erörtert. Als ausführbare Spezifikation sollten die automatisierten Tests aber auch für alle Beteiligten verständlich sein, das heißt dass der Test nach Möglichkeit in der Muttersprache geschrieben werden sollte. Das geht bislang mit dem Robot Framework noch nicht, oder doch?Mit einer einfachen Resource-Datei, lässt sich das Manko leicht Beheben. Vollständig gelöst werden sollte das Problem dann mit dem kommenden Robot Framework 2.5 sein.

*** Settings ***
 
 
*** Keywords ***
Gegeben ${keyword}
	Run Keyword  ${keyword}
 
Sei ${keyword}
	Run Keyword  ${keyword}
 
Wenn ${keyword}
	Run Keyword  ${keyword}
 
Dann ${keyword}
	Run Keyword  ${keyword}
 
Und ${keyword}
	Run Keyword  ${keyword}

Ein Test kann dann sehr lesbar geschrieben werden, wie das Beispiel zeigt:

*** Settings ***
Resource        ${RESOURCES}/German-BDD.txt
 
*** Keyword ***
Verhalten
    [Arguments]  ${arg1}  ${xyz}
 
    Sei dies, und auch ${arg1} noch gegeben
    Und das hier ebenso
 
    Wenn dann jenes geschieht
    Und folgendes danach
 
    Dann ist diese Situation eingetreten
    Und die Daten ${xyz} befinden sich in der Datenbank
    Und übrgens, Umlaute und Kommata in Keywords funktionieren auch
 
| *Test Case* | | *arg1* | *xyz* |
| 1 | Verhalten |    123 |   234 |

Man beachte, dass sogar Umlaute und Satzzeichen in Keywords funktionieren – sowohl mit Python als auch mit Jython. Ein Fakt, der selbst mich heute angenehm überrascht hat 🙂

Andreas Ebbert-Karroum

Andreas Ebbert-Karroum ist Agile Principal Consultant bei codecentric und Product Owner von CenterDevice.

Share on FacebookGoogle+Share on LinkedInTweet about this on TwitterShare on RedditDigg thisShare on StumbleUpon

Kommentieren

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.