Vereinfachen Sie Compliance-Workflows mit dem neuen C/C++-Test 2024.2 und KI-gesteuerter Automatisierung | Registrierung

Die Anwendungsabdeckung ist die aussagekräftigste Kennzahl, die Sie nicht messen

Parasoft-Würfel-Logo 300x300
31. Januar 2024
3 min lesen

Die Anwendungsabdeckung verbindet die Codeabdeckung mehrerer Teststrategien und bietet Einblicke in riskante Anwendungsdomänen. In diesem Artikel werden die Vorteile der Anwendungsabdeckung untersucht und wie Parasoft DTP die Daten mit verschiedenen anderen Testpraktiken kombiniert, um die Softwarequalität zu verbessern.

Codeabdeckung ist ein wichtiger, aber oft vernachlässigter Schritt in einem gesamten Softwarequalitätsprozess, der es Ihnen ermöglicht, zu verstehen, wo in Ihrer Anwendung Risiken lauern. Darüber hinaus kommt es auf die Methoden an, mit denen die Abdeckung gemessen wird – verschiedene Aktivitäten messen unterschiedliche Dimensionen der Anwendung.

Geben Sie die Anwendungsabdeckung ein, die angibt, inwieweit der Quellcode der Anwendung von allen Testpraktiken ausgeübt wird. Die Anwendungsabdeckung bietet äußerst aussagekräftige Einblicke in das Risiko, da nicht getestete oder nicht getestete Teile der Anwendung verfügbar gemacht werden. Bevor wir uns mit den Details der Anwendungsabdeckung befassen, wollen wir erläutern, wie die Codeabdeckung normalerweise gemessen wird.

Was ist falsch daran, wie Teams normalerweise die Abdeckung messen?

Entwickler-/Testteams stützen sich normalerweise darauf Unit-Test als primäres Fahrzeug für die Fahrversicherung. Unit-Tests bieten auch viele andere wertvolle Vorteile, wie zum Beispiel:

  • Sofortiger und automatischer Beweis, dass der Code jederzeit und überall funktioniert.
  • Vertrauen in die Umgestaltung von Code, was zu einem verbesserten Design und einer besseren Wartbarkeit führt.
  • Fast sofortige Rückmeldung, wenn etwas kaputt geht.
  • Die Möglichkeit, den Code vor dem Einchecken zu validieren, da Tests lokal und unabhängig von der Continuous-Integration-Infrastruktur ausgeführt werden können.

Machen wir deutlich, dass wir glühende Befürworter von Unit-Tests sind. Obwohl Unit-Tests wertvoll sind, um die Korrektheit einzelner Codeeinheiten sicherzustellen, ist eine Kombination von Testansätzen, darunter Integrationstests, Funktionstests, Leistungstests und sogar manuelle Tests (ja, manuelle Tests), für eine umfassende Bewertung unerlässlich Gesamtqualität und Zuverlässigkeit einer Softwareanwendung.

Es ist wichtig zu erkennen, dass die Bewertung der Abdeckung bei funktionalen und manuellen Testausführungen gleichermaßen wichtig ist. Mit diesem Ansatz können Sie die Vollständigkeit und Qualität Ihrer funktionalen und manuellen Testausführungen messen.

Warum Teams Anwendungsabdeckung zum Dev/Test-Mix hinzufügen sollten

Eine entscheidende Kennzahl zur Beurteilung der Release-Bereitschaft ist die Anwendungsabdeckung. Unter Anwendungsabdeckung versteht man die Aggregation und Korrelation der Codeabdeckung aus verschiedenen Testtechniken. Durch die Zusammenfassung der Codeabdeckung aller Testpraktiken können Unternehmen einen besseren Einblick in riskante Bereiche der Anwendung erhalten.

Keine Zeit zum Testen? Kein Problem

Die Anwendungsabdeckung ermöglicht nicht nur genauere Qualitäts- und Abdeckungsmetriken, sondern kann Unternehmen auch dabei helfen, ihre Testbemühungen zu fokussieren, wenn Zeitbeschränkungen ihre Fähigkeit einschränken, die gesamte Suite manueller Regressionstests durchzuführen. Bei explorativen Tests wissen Tester beispielsweise, dass sich der Code für bestimmte Funktionen geändert hat, und versuchen schnell, unerwartetes Verhalten zu erkennen, indem sie manuelle Tests für die geänderte Funktionalität durchführen.

Das Erfassen von Abdeckungsdaten zur laufenden Anwendung während des explorativen Testens erhöht möglicherweise den Wert dieses Ansatzes, da es ein besseres Verständnis darüber ermöglicht, welchen Code der Tester berührt hat.

Eine Entwicklungstestplattform wie z Parasoft DTP kann die Abhängigkeit von willkürlichen Sondierungstests verringern, indem Teams ein besseres Verständnis dafür erhalten, was sich geändert hat, welche Bereiche möglicherweise betroffen sind und was erneut getestet werden muss. Erkundungstests werden dann zu einer zusätzlichen Testschicht, die zum Ausfüllen von Lücken verwendet wird.

Keine einzelne Metrik oder Aktivität ist ein Allheilmittel zur Fehlervermeidung

Es ist wichtig zu beachten, dass die Anwendungsabdeckung allein kein glaubwürdiger Maßstab für die Anwendungsqualität ist. Abdeckungsdaten sollten auch im Kontext anderer Softwarequalitätsmetriken gemessen werden, wie z. B. Verstöße gegen die statische Analyse, Unit-Test-Ergebnisse und dergleichen, um ein umfassendes Verständnis des Risikos aus allen Blickwinkeln zu entwickeln.

Der Screenshot unten zeigt eine Ansicht der Development Testing Platform (DTP) von Parasoft mit Abdeckungsdaten, Unit-Test-Ergebnissen, Funktionstest-Ergebnissen, Verstößen gegen statische Analysen und anderen Metriken. Diese granulare Detailtiefe hilft Managern, den aktuellen Risikostatus in der Anwendung sowie die Auswirkungen kürzlicher Änderungen auf Qualitätsmetriken zu verstehen.

Bild des Dashboards von Parasoft DTP, das die Test-Abdeckung und fehlgeschlagene Testpriorisierung zeigt.

Verschaffen Sie sich einen besseren Überblick über die Anwendungsabdeckung

Teams erhalten einen besseren Überblick über Testergebnisse und Anwendungsabdeckung durch aufschlussreiche Berichte und Analysen, die von Plattformen wie DTP bereitgestellt werden. Es führt die Ergebnisse aller Testpraktiken zusammen und korreliert sie, um eine kontinuierliche Überwachung der Testergebnisse zu ermöglichen. Teams können sehen, was funktioniert und was nicht.

Möchten Sie die Anwendungsabdeckungsfunktionen von DTP aus erster Hand kennenlernen? Demo anfordern mit einem unserer Experten.

Messung der Codeabdeckung: Leitfaden für effektives Testen