Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
modul:m450:learningunits:lu08:variablenbruno [2025/09/18 09:35] – [Umsetzung] kmaurizimodul:m450:learningunits:lu08:variablenbruno [2025/09/18 10:54] (aktuell) – [Hinweise & Doku] kmaurizi
Zeile 14: Zeile 14:
   * Ich passe jedesmal den Pfad in allen Requests an.     * Ich passe jedesmal den Pfad in allen Requests an.  
   * Ich erstelle Kopien aller Requests – einmal mit dem Pfad des Testsystems und einmal mit dem Pfad der Entwicklungsumgebung.     * Ich erstelle Kopien aller Requests – einmal mit dem Pfad des Testsystems und einmal mit dem Pfad der Entwicklungsumgebung.  
-  * Ich verwende eine Umgebungsvariable und passe jeweils nur den Wert dieser Variablen an. ✅+  * Ich verwende eine Umgebungsvariable und passe jeweils nur den Wert dieser Variablen an. ✅  
  
 Um eine solche Umgebungsvariable einzusetzen, benötigen wir nur wenige Schritte:   Um eine solche Umgebungsvariable einzusetzen, benötigen wir nur wenige Schritte:  
   - Definiere die Variable in einer Environment-Datei (z. B. ''dev.json'' oder ''test.json'').     - Definiere die Variable in einer Environment-Datei (z. B. ''dev.json'' oder ''test.json'').  
   - Lege den Wert fest (z. B. ''http://localhost:5000'' oder ''https://test.bzz.ch'').     - Lege den Wert fest (z. B. ''http://localhost:5000'' oder ''https://test.bzz.ch'').  
-  - Füge die Variable in den Pfad deiner Requests ein, z. B. ''{{baseUrl}}/book/list''.  +  - Füge die Variable in den Pfad deiner Requests ein, z. B. ''%%{{baseUrl}}%%/book/list''.  
  
 Siehe [[https://docs.usebruno.com/variables/environment-variables|Bruno Docs: Environment Variables]]. Siehe [[https://docs.usebruno.com/variables/environment-variables|Bruno Docs: Environment Variables]].
  
-===== Variablen für Daten ===== +===== Environment aktivieren ===== 
-Mit Variablen können wir auch Werte aus einer Response speichern und in einem anderen Request wiederverwenden.  +Damit die Variablen in den Requests auch wirklich genutzt werden, musst du in Bruno das passende Environment aktivieren:
  
-==== Beispiele ==== +  - Öffne dein Projekt in Bruno.   
-=== Erstellen und Lesen von Daten === +  - Oben in der Menüleiste findest du ein Auswahlfeld ''Environment''.   
-  - Ein Request speichert einen neuen Kunden. Als Antwort liefert die API die Kundennummer.   +  - Wähle dort das gewünschte Environment (z. B. ''dev'' oder ''test'') aus.   
-  - Ich speichere die Kundennummer in einer Variablen.   +  - Starte den Request – Bruno ersetzt nun automatisch alle Vorkommen von ''%%{{...}}%%'' mit den Werten aus deiner Environment-Datei.  
-  - Ein weiterer Request verwendet diese Variable, um den vorher erstellten Kunden zu lesen.  +
  
-=== Authentifikation === +So kannst du mit denselben Requests sowohl gegen die Entwicklungsals auch die Testumgebung arbeitenohne etwas am Request selbst ändern zu müssen.
-Bei vielen APIs brauchen wir ein Token, welches unsere Identität und Berechtigungen enthält.   +
-Dieses Token erhalten wir, indem wir einen Login-Request senden.   +
- +
-  - Ein Request sendet die Login-Daten an die API. Als Antwort erhalte ich ein Authentifizierungstoken.   +
-  - Ich speichere das Token in einer Variablen.   +
-  - Bei jedem weiteren Request sende ich das gespeicherte Token mit.   +
- +
-====== LU08b - Variablen einsetzen ====== +
- +
-<WRAP center round info 60%> +
-Variablen in Bruno erleichtern das Anpassen von Requests an unterschiedliche Bedingungen. +
-</WRAP> +
- +
-===== Variablen für Pfade ===== +
-Im Verlauf der Entwicklung wird eine Applikation zunächst in der Entwicklungsumgebung ausgeführt.   +
-Für die Requests in Bruno bedeutet dies in der Regel, dass unsere API unter einem Pfad wie ''http://localhost:5000/...'' erreichbar ist.   +
-Später werden wir die Applikation auf unser Testsystem deployen.   +
-Der Pfad im Testsystem könnte z.B. ''https://test.bzz.ch/...'' sein.   +
- +
-Ich möchte meine API-Tests in beiden Umgebungen nutzen können. Welche Möglichkeiten habe ich?   +
-  * Ich passe jedesmal den Pfad in allen Requests an.   +
-  * Ich erstelle Kopien aller Requests – einmal mit dem Pfad des Testsystems und einmal mit dem Pfad der Entwicklungsumgebung.   +
-  * Ich verwende eine Umgebungsvariable und passe jeweils nur den Wert dieser Variablen an. ✅   +
- +
-Um eine solche Umgebungsvariable einzusetzen, benötigen wir nur wenige Schritte:   +
-  - Definiere die Variable in einer Environment-Datei (z. B. ''dev.json'' oder ''test.json'').   +
-  - Lege den Wert fest (z. B. ''http://localhost:5000'' oder ''https://test.bzz.ch'').   +
-  - Füge die Variable in den Pfad deiner Requests einz. B. ''%%{{baseUrl}}%%/book/list''  +
- +
-Siehe [[https://docs.usebruno.com/variables/environment-variables|Bruno Docs: Environment Variables]].+
  
 ===== Variablen für Daten ===== ===== Variablen für Daten =====
Zeile 114: Zeile 83:
  
 ===== Hinweise & Doku ===== ===== Hinweise & Doku =====
-Tests/Assertions in Bruno: [[https://docs.usebruno.com/testing/tests/introduction|Bruno Docs: Tests]]   +  * Tests/Assertions in Bruno: [[https://docs.usebruno.com/testing/tests/introduction|Bruno Docs: Tests]]   
-JavaScript-API Referenz (z. B. bru.setEnvVar): [[https://docs.usebruno.com/testing/script/javascript-reference|Bruno Docs: JavaScript API Reference]]   +  JavaScript-API Referenz (z. B. bru.setEnvVar): [[https://docs.usebruno.com/testing/script/javascript-reference|Bruno Docs: JavaScript API Reference]]  
- +
----- +
-{{tag>M450-LU08}} +
-[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter (angepasst) +
- +
-===== Hinweise & Doku ===== +
-- Tests/Assertions in Bruno (inkl. `res` & Chai): [[https://docs.usebruno.com/testing/tests/introduction|Bruno Docs: Tests]]   +
-- Vollständige JavaScript-API (u. a. `bru.setEnvVar`, `res.getBody()`): [[https://docs.usebruno.com/testing/script/javascript-reference|Bruno Docs: JavaScript API Reference]]+
  
 ---- ----
  • modul/m450/learningunits/lu08/variablenbruno.1758180928.txt.gz
  • Zuletzt geändert: 2025/09/18 09:35
  • von kmaurizi