Vorlage:BBTest
| |
Achtung: Du befindest dich in der RPG-Dev-Basis, diese Seite ist Teil der Kategorie RPG-Dev-Wiki:Basis. Änderungen an dieser Seite werden in viele RPG-Dev-Clients nach einem Update ebenfalls übernommen! |
Diese Vorlage dient dazu, eine Vorlage bzw. Parser-Funktion oder deren Verhalten in einer bestimmten Situation (Seite) zu testen indem eine von der Vorlage erwartete Ausgabe angegeben wird. Die Vorlage enthält dabei Mechanismen die Massentests vereinfachen und damit den Aufwand für Black-Box-Tests reduzieren.
Inhaltsverzeichnis |
Anwendung
Schlägt ein Test fehl, so wird die Seite in die Kategorie Kategorie:RPG-Dev Fehlgeschlagene Black-Box-Tests geschoben. Ansonsten finden sich alle Tests in der Kategorie Kategorie:RPG-Dev Black-Box-Tests wieder.
Es gibt die Möglichkeit die Vorlage auf zwei verschiedene Weißen zu verwenden. Entweder einen einzelnen Test oder einen Massentest bei dem die selbe Vorlage mehrmals mit verschiedenen Parametern aufgerufen werden kann ohne alle Angaben mehrfach machen zu müssen.
Einfacher Test
Beim Einfachen Test müssen lediglich die Parameter Eingabe und Ausgabe angegeben werden. Unter Eingabe können eine oder mehrere Vorlagen und/oder Parserfunktionen aufgerufen werden, unter Ausgabe wird der Wert erwartet, den die unter Eingabe angegebenen Aufrufe produzieren sollen. Beide Werte werden dann direkt miteinander verglichen.
Beispiel:
{{BBTest
| Beschreibung = Ersetzung einzelner Zeichen
| Eingabe = "{{#replace: a_b_c | _ | , }}"
| Erwartet = "a,b,c"
}}
Massentests
Soll eine Vorlage mehrfach mit verschiedenen, leicht voneinander abweichenden Parametern aufgerufen werden, so bietet sich ein Massentests an. Hierfür wird die Vorlage mit dem Parameter Vorlage angegeben. Zusätzlich muss eine Hash-Tabelle erzeugt werden die als Keys die Parameternamen enthält und als dazugehörigen Wert jeweils den Parameter-Wert mit dem die unter Vorlage angegebene Vorlage aufgerufen werden soll.
Für alle weiteren Aufrufe der Vorlage Vorlage:BBTest gilt dann, dass solange nicht der Parameter Vorlage oder Eingabe angegeben wird, der Test ein Fortsetzungs-Test des letzten Tests ist. Alle angegebenen Parameter werden dann vererbt und für den Fortsetzungs-Test genau so angewandt. Es bietet sich an zwischen den einzellnen Aufrufen das unter dem Parameter Parameter-Hash angegebene Hash zu beeinflussen so wie die Parameter Erwartet und ggf. Beschreibung entsprechend für den Fortsetzungs-Test anzupassen.
Beispiel:
{{ <!-- Test 1 -->
#hashinclude:hashTest
| 1 = a_b_c
| Suchen = _
| Ersetzen = ,
}}{{
BBTest
| Beschreibung = Einfaches Ersetzen
| Vorlage = ersetzen
| Parameter-Hash = hashTest
| Erwartet = "a,b,c"
| Zirkumfix = "
}}
{{ <!-- Test 2 -->
#hashinclude:hashTest
| Ersetzen = -
}}{{
BBTest
| Beschreibung = Ersetzung mit <code>-</code>
| Erwartet = "a-b-c"
}}
Parameter
Fett markierte Parameter sind Pflichtangaben, die unbedingt einen Wert enthalten müssen, um die Vorlage sinnvoll verwenden zu können. Parameter die für spezielle Zwecke hinzugefügt wurden und in der Praxis kaum benötigt werden dürften, sind kursiv hervorgehoben.
| Parameter | Beschreibung |
|---|---|
| Beschreibung | Kurze Beschreibung was der Test genau testen soll. Z.B. bestimmtes Verhalten einer Vorlage. |
| Einfacher Test | |
| Eingabe | Hier können eine oder auch mehrere Vorlagen oder Parserfunktionen aufgerufen werden. Deren Ergebnis wird dann an den Parameter weiter gegeben und mit dem unter Erwartet angegebenen Wert verglichen. Stimmen beide überein, so ist der Test erfolgreich. |
| Erwartet | Erwartete Ausgabe der Eingabe. |
| Erwartet-RegEx | Alternative zu Erwartet, ermöglicht einen Regulären Ausdruck der gegen den Wert von Eingabe geprüft wird. Beispiel: /.*_ABC_.*/i
|
| Umfangreicher Vorlagen-Test (Massentests) | |
| Vorlage | Für Umfangreichere Vorlagen-Tests, alternativer Parameter zu Eingabe. Name der Vorlage die getestet werden soll. |
| Parameter-Hash | Ein Hash das die Parameter enthält mit denen die unter Vorlage angegebene Vorlage aufgerufen werden soll. |
| Erwartet | Erwartete Ausgabe der unter Vorlage angegebenen Vorlage die zusammen mit den unter Parameter-Hash angegebenem Parameter-Hash aufgerufen wird. |
| Erwartet-RegEx | Alternative zu Erwartet, ermöglicht einen Regulären Ausdruck der gegen die Ausgabe der aufgerufenen Voralge geprüft wird. Beispiel: /.*_ABC_.*/i
|
| Zirkumfix | Ermöglicht die Angabe eines Strings der jeweils vor und hinter die Ausgabe der Vorlage gestellt wird, bevor mit dem über Erwartet angegebenen Wert verglichen wird. Dies ermöglicht eventuelle Leerzeichen zu beachten da diese beim Vergleichen standardmäßig ignoriert werden. |
| Generiere Kopiervorlage | Gibt an, ob und wie der Vorlagenaufruf mit den entsprechenden Parametern angezeigt werden soll. Wird kompakt angegeben, so wird die Kopiervorlage einzeilig generiert, ansonsten kann ein Wahrheitswert falsch oder wahr (Standard) angegeben werden um zu definieren ob eine umfangreiche Kopiervorlage ausgegeben werden soll. |
| Sonstiges | |
| Wenn Erfolg | Text der anstelle der ausführlichen Beschreibung ausgegeben wird falls der Test erfolgreich ist. |
| Wenn Fehler | Text der anstelle der ausführlichen Beschreibung ausgegeben wird falls der Test fehlschlägt. Wird der Parameter nicht angegeben, der Parameter Wenn Erfolg jedoch gesetzt ist, so wird im Fehler-Fall überhaupt nichts ausgegeben. |
| |
|