Mockup-Webservice
Hinweis
Der Mockup-Webservice ist nicht für die produktive Nutzung ausgelegt. Dieser Webservice sollte nur für temporäre Tests genutzt werden.
Der Mockup-Webservice ist ein Dummy-Service, der in begrenztem Rahmen das Verhalten eines fremdem Webservices simulieren kann. Dieser Webservice kann genutzt werden, wenn ein fremder Webservice nicht verfügbar ist, aber eine entsprechende Client-Komponente getestet werden soll.
Abhängig von der Konfiguration kann der Mockup-Webservice Anfragen unter beliebigen URL-Pfaden entgegennehmen. Der Mockup-Webservice antwortet anhand von Regeln, die definiert werden müssen, mit einem vorgegebenen Inhalt auf diese Anfragen.
Eigenschaft | Beschreibung |
|---|---|
MockupService.Activate | Wahrheitswert, ob der Mockup-Webservice aktiviert ist Standardwert: |
MockupService.UrlBasePath | optionaler URL-Basispfad, der allen Anfragen an den Mockup-Webservice vorangestellt wird Der Service nimmt Anfragen prinzipiell unter allen URL-Pfaden entgegen. Daher kann eine Begrenzung auf Anfragen, die mit einem bestimmten Pfad beginnen, sinnvoll sein (z. B. Die Eigenschaft |
MockupService.Rule[].Method MockupService.Rule[].Path* | HTTP-Methode(n) und URL-Pfad als Filterkriterien für eine Regel Diese Methoden dienen zur Auswahl von Regeln, die auf eine eingehende Anfrage angewendet werden. Zur Bildung der Antwort werden die weiteren Eigenschaften der jeweiligen Regel genutzt. Die konfigurierten Regeln werden in der Reihenfolge ihrer Definition ausgewertet. Die erste Regel, die mit der Anfrage übereinstimmt, wird verwendet. Die Eigenschaft Die Eigenschaft Wenn z. B. ein Basispfad |
MockupService.Rule[].Content MockupService.Rule[].ContentFile | Wenn die zu erstellende Antwort einen Body-Inhalt umfasst, kann dieser als Zeichenfolge in |
MockupService.Rule[].Header[] | Definition von spezifischen HTTP-Headern, die in der Antwort gesetzt werden Jeder Eintrag setzt sich aus den folgenden Einzelparametern zusammen:
|
MockupService.Rule[].StatusCode | numerischer HTTP-Statuswert, der zurückgeliefert wird Der Zahlenwert ist hier als Text anzugeben, da der Wert auch dynamisch anhand von Variablen definiert werden kann. Standardwert: |
MockupService.Rule[].Delay | Verzögerungswert in Millisekunden Dieser Wert dient der künstlichen Verlangsamung der Antwort, um langläufige Anfragen zu simulieren. Standardwert: |
MockupService.Rule[].ErrorRate | Fehlerrate in ganzzahliger Prozentangabe (zwischen Die Fehlerrate kann genutzt werden, um einen Verarbeitungsfehler zu simulieren. Eine Anfrage wird mit der angegebenen Wahrscheinlichkeit mit einem Fehler beantwortet. Der Statuswert und der Body-Inhalt für den Fehlerfall sind über die nachfolgenden Eigenschaften Standardwert: |
MockupService.Rule[].ContentOnError MockupService.Rule[].ContentFileOnError MockupService.Rule[].StatusCodeOnError | Eigenschaften analog zu Diese Eigenschaften werden in dem Fall herangezogen, dass über |
Die Werte der Eigenschaften .Content, .ContentFile, .Header[] und .StatusCode können pro Anfrage durch die Einbindung von Variablen dynamisch generiert werden. Bei der Eigenschaft .ContentFile kann sowohl der Dateipfad dynamisch generiert werden als auch der Inhalt der Datei, sofern dies eine Textdatei ist. Bei der Eigenschaft .Header[] kann nur der zweite Teilparameter Value dynamisch generiert werden.
Ausschließlich die nachfolgend beschriebenen Variablen, die aus dem Inhalt der eingehenden Anfrage extrahiert werden, sind verfügbar. Das Einfügen in die Eigenschaftswerte erfolgt durch eine reine Textersetzung. Hierfür muss die Syntax %Variablenname% für Textvariablen verwendet werden.
URL-Pfad: Über die Variable
%Path[n]%kann auf die Teilelemente des URL-Pfades zugegriffen werden, beginnend beim BasispfadMockupService.UrlBasePath.nsteht für die laufende Nummer des Elementes. Bei einem Pfad/Mockup/Tests/Test1ergibt%Path[2]%beispielsweiseTests.URL-Parameter: Diese stehen unter dem in der URL angegebenen Namen als Variablen zur Verfügung. Bei einer Parameterliste
?param1=value1heißt die Variable z. B.%param1%.Header-Wert: Die Namen der Werte im HTTP-Header der Anfrage sind auch als Variablen nutzbar.
Body-Inhalt: Der gesamte Inhalt des HTTP-Bodys ist als eine zusammenhängende Zeichenfolge in der Variable
%Body%verfügbar. Dies ist nur bei textuellen Inhalten nutzbar und nicht bei binären Inhalten.
Hinweis
Für URL-Parameter und Header-Werte ist die folgende Besonderheit zu beachten: Da Variablennamen programmintern auf bestimmte zulässige Zeichen (Buchstaben, Ziffern und Unterstrich) beschränkt sind, kann eine automatische Anpassung des Originalnamens erfolgen. Aus dem Header-Wert Content-Type wird z. B. der Variablenname %ContentType%.