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:testsbruno [2025/09/18 09:22] – [Daten in der Response prüfen] kmaurizimodul:m450:learningunits:lu08:testsbruno [2025/09/18 09:24] (aktuell) – [Weitere Beispiele] kmaurizi
Zeile 37: Zeile 37:
   expect(res.status).to.eql(200);     expect(res.status).to.eql(200);  
 });'' });''
 +
 +Diese Zeilen reichen schon, damit Bruno den http-Statuscode überprüft.  
 +Ein paar Erklärungen:  
 +  * ''"Status test"'' ist der Name meines Tests. Dieser wird im Testprotokoll angezeigt und sollte möglichst aussagekräftig sein.  
 +  * Ich prüfe hier, ob die API mit Status **200** antwortet. Je nach Testfall würde ich unterschiedliche Statuscodes erwarten.  
 +
 +====== LU08a - Resultate auswerten ======
 +
 +<WRAP center round info 60%>
 +Mittels **Tests** kann Bruno die Antwort einer API automatisiert auswerten.
 +</WRAP>
 +
 +In jeder Request-Datei (''.bru'') kannst du im Bereich **Tests** kleine JavaScript-Funktionen schreiben, um das Resultat eines Requests auszuwerten.  
 +Bruno zeigt dir danach direkt an, ob der Request das erwartete Resultat geliefert hat oder nicht.
 +
 +===== http-Statuscode prüfen =====
 +Im einfachsten Fall will ich nur den http-Statuscode überprüfen:
 +
 +<code javascript>
 +test("Status test", () => {
 +  expect(res.status).to.eql(200);
 +});
 +</code>
  
 Diese Zeilen reichen schon, damit Bruno den http-Statuscode überprüft.   Diese Zeilen reichen schon, damit Bruno den http-Statuscode überprüft.  
Zeile 47: Zeile 70:
 Schliesslich wollen wir nicht irgendwelche Daten lesen, sondern einen bestimmten Datensatz. Schliesslich wollen wir nicht irgendwelche Daten lesen, sondern einen bestimmten Datensatz.
  
-''test("Data test", () => {   +<code javascript> 
-&nbsp;&nbsp;expect(res.status).to.eql(200);   +test("Data test", () => { 
-&nbsp;&nbsp;const responseJson = res.json();   +  expect(res.status).to.eql(200); 
-&nbsp;&nbsp;expect(responseJson.givenname).to.eql("Eva");   +  const responseJson = res.json(); 
-&nbsp;&nbsp;expect(responseJson.age).to.eql(28);   +  expect(responseJson.givenname).to.eql("Eva"); 
-});''+  expect(responseJson.age).to.eql(28); 
 +}); 
 +</code>
  
 In diesem Beispiel prüfen wir drei Elemente der Response-Daten:   In diesem Beispiel prüfen wir drei Elemente der Response-Daten:  
Zeile 60: Zeile 85:
  
 Trifft irgendeine dieser Bedingungen nicht zu, zeigt Bruno den Request als fehlgeschlagen an.   Trifft irgendeine dieser Bedingungen nicht zu, zeigt Bruno den Request als fehlgeschlagen an.  
- 
-===== Weitere Beispiele ===== 
-Im [[https://docs.usebruno.com/getting-started/scripts/tests|Bruno Docs: Tests]] findest du noch weitere Beispiele und Möglichkeiten für Tests.   
- 
----- 
-{{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) 
  
 ===== Weitere Beispiele ===== ===== Weitere Beispiele =====
Zeile 73: Zeile 91:
 ---- ----
 {{tag>M450-LU08}} {{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) +[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Kevin Maurizi
  • modul/m450/learningunits/lu08/testsbruno.1758180172.txt.gz
  • Zuletzt geändert: 2025/09/18 09:22
  • von kmaurizi