Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
modul:m450:learningunits:lu02:coverage [2024/03/28 14:07] – angelegt - Externe Bearbeitung 127.0.0.1modul:m450:learningunits:lu02:coverage [2024/10/01 10:54] (aktuell) msuter
Zeile 1: Zeile 1:
-====== LU02c - Testabdeckung ======+====== LU02c - Test Coverage ======
 //Siehe auch [[https://www.browserstack.com/guide/test-coverage-techniques|BrowserStack - Test Coverage Techniques]]// //Siehe auch [[https://www.browserstack.com/guide/test-coverage-techniques|BrowserStack - Test Coverage Techniques]]//
  
 <WRAP center round info 60%> <WRAP center round info 60%>
 Testabdeckung bezeichnet das Verhältnis zwischen den möglichen und den tatsächlich getesteten Teilen einer Software. Testabdeckung bezeichnet das Verhältnis zwischen den möglichen und den tatsächlich getesteten Teilen einer Software.
-Als Beispiel misst die Codeabdeckung das Verhältnis zwischen allen vorhandenen Codezeilen und den Codezeilen die im Rahmen aller Testfälle ausgeführt wurden.+Beispielsweise misst die Codeabdeckung das Verhältnis zwischen allen vorhandenen Codezeilen und den Codezeilendie in allen Testfällen ausgeführt wurden.
 </WRAP> </WRAP>
  
-Testabdeckung kann als Metrik in jeder Teststufe eingesetzt werden. +Testabdeckung kann als Metrik in jeder Teststufe verwendet werden. 
-Beim Unit Test wird unter anderem der Prozentsatz der ausgeführten Codezeilen geprüft.+Beim Unit-Test wird unter anderem der Prozentsatz der ausgeführten Codezeilen überprüft.
  
-===== Vorteile der Testabdeckung ===== +===== Vorteile von Testabdeckung ===== 
-Wenn wir die Testabdeckung unserer Applikation fortlaufend messen, ergeben sich einige Vorteile:+Wenn wir die Testabdeckung unserer Anwendung kontinuierlich messen, ergeben sich einige Vorteile:
  
-  * **Frühes Erkennen**: Wir entdecken früher Lücken in unserer Applikation oder in den Testfällen. Je früher wir ein Problem erkennen, desto einfacher kann es beseitigt werden+  * **Früheres Erkennen**: Wir erkennen Lücken in unserer Anwendung oder in den Testfällen früher. Je früher wir ein Problem erkennen, desto einfacher ist es, es zu beheben
-  * **Redundanzen eliminieren**: Die Testabdeckung hilft uns Redundanzen zu erkennen und zu eliminieren+  * **Redundanzen eliminieren**: Die Testabdeckung hilft unsRedundanzen zu erkennen und zu beseitigen
-  * **Weniger Aufwand**: Eine bessere Testabdeckung bedeutet weniger Fehler in späteren Teststufen und in der Produktion. Dadurch verringert sich der Aufwand für die Fehlerbeseitigung und die Qualitätssicherung.+  * **Weniger Aufwand**: Eine bessere Testabdeckung bedeutet weniger Fehler in späteren Teststufen und in der Produktion. Dadurch verringert sich der Aufwand für die Fehlerbehebung und die Qualitätssicherung.
  
-===== Codeabdeckung (Code Coverage) ===== +===== Code-Abdeckung (Code Coverage) ===== 
-Die Codeabdeckung ist für das White Box-Testing in Unit und Integrationstests von grosser Bedeutung.+Code Coverage ist für das White Box Testing in Unitund Integrationstests von großer Bedeutung.
 Mit Hilfe von Werkzeugen wird gemessen, wie vollständig der Code getestet wurde. Mit Hilfe von Werkzeugen wird gemessen, wie vollständig der Code getestet wurde.
-Eine hohe Codeabdeckung erhöht die Wahrscheinlichkeit, dass Fehler früh erkannt und beseitigt werden. +Eine hohe Code Coverage erhöht die Wahrscheinlichkeit, dass Fehler frühzeitig erkannt und behoben werden. 
-Zudem helfen die Kennzahlen der Codeabdeckung zu erkennen, welche zusätzlichen Testfälle benötigt werden.+Darüber hinaus helfen Kennzahlen zur Codeabdeckung zu erkennen, welche zusätzlichen Testfälle benötigt werden.
  
-Die Codeabdeckung setzt sich aus mehreren Ebenen zusammen. +Die Code Coverage setzt sich aus mehreren Ebenen zusammen. 
-   +==== Anweisungsabdeckung (Statement Coverage) ====
-=== Anweisungsabdeckung (Statement Coverage) ===+
 Die Anweisungsabdeckung misst, wieviel Prozent der Anweisungen im Sourcecode ausgeführt wurden. Die Anweisungsabdeckung misst, wieviel Prozent der Anweisungen im Sourcecode ausgeführt wurden.
  
-=== Zweigabdeckung (Branch Coverage) ===+==== Zweigabdeckung (Branch Coverage) ====
 Die Zweigabdeckung misst, ob bei jeder Entscheidung innerhalb des Codes (if, while, until, switch, ...) jeder Zweig einmal durchgeführt wurde. Die Zweigabdeckung misst, ob bei jeder Entscheidung innerhalb des Codes (if, while, until, switch, ...) jeder Zweig einmal durchgeführt wurde.
  
Zeile 35: Zeile 34:
 if num1 > 0: if num1 > 0:
     print('valid')     print('valid')
-</code> <code python>+</code> | <code python>
 num1 = int(input('Number >')) num1 = int(input('Number >'))
 if num1 > 0: if num1 > 0:
Zeile 45: Zeile 44:
  
  
-=== Bedingungsabdeckung (Condition Coverage) ===+==== Bedingungsabdeckung (Condition Coverage) ====
 Die Bedingungsabdeckung misst, ob jede (Teil-)Bedingung einmal mit ''true'' und einmal mit ''false'' ausgewertet wurde. Die Bedingungsabdeckung misst, ob jede (Teil-)Bedingung einmal mit ''true'' und einmal mit ''false'' ausgewertet wurde.
  
Zeile 52: Zeile 51:
 if num1 > 0: if num1 > 0:
     print('valid')     print('valid')
-</code> <code python>+</code> | <code python>
 num1 = int(input('Number >')) num1 = int(input('Number >'))
 if num1 > 0: if num1 > 0:
Zeile 75: Zeile 74:
 | false | false | | false | false |
  
-=== Funktionsabdeckung (Function Coverage) ===+==== Funktionsabdeckung (Function Coverage) ====
 Die Funktionsabdeckung misst die Anzahl der ausgeführten Funktionen im Verhältnis zur Anzahl aller Funktionen. Die Funktionsabdeckung misst die Anzahl der ausgeführten Funktionen im Verhältnis zur Anzahl aller Funktionen.
  
Zeile 81: Zeile 80:
 {{tag>M450-LU02}} {{tag>M450-LU02}}
 [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter
 +
  • modul/m450/learningunits/lu02/coverage.1711631267.txt.gz
  • Zuletzt geändert: 2024/03/28 14:07
  • von 127.0.0.1