Parasoft C/C++test 2022.2 unterstützt das neue MISRA C:2012 Amendment 3 und eine Entwurfsversion von MISRA C++ 202x. Erfahren Sie mehr >>

Der C / C ++ - Test, Jtest, dotTEST 10.3.2 und Development Testing Platform 5.3.2 Release

Von Markus Lambert

20. Juni 2017

5  min lesen

Mit der Veröffentlichung des Parasoft C / C ++ - Tests, Jtest, dotTEST 10.3.2 und Parasoft DTP 5.3.2 in dieser Woche bieten wir zahlreiche Verbesserungen, um die Effizienz des SDLC in Bezug auf die folgenden Themen zu verbessern:

  1. Aufbau einer soliden Testpyramide
  2. Management des Änderungsrisikos
  3. Reduzierung der Compliance-Belastung

In diesem Beitrag werde ich näher darauf eingehen, was dies auf einer umsetzbareren Ebene bedeutet. Lieber zuschauen als lesen? Hier habe ich es in einem kurzen Video erklärt:

1. Aufbau einer soliden Testpyramide

Wenn Sie beurteilen, wie Sie die Anforderungen in Ihrer Anwendung am besten validieren und testen können, verwenden Sie normalerweise eine oder mehrere Testtechniken, die von Komponententests bis hin zu manuellen oder explorativen Tests reichen. In den Best Practices für agile und kontinuierliche Tests wird empfohlen, diese Techniken in einer Pyramide anzuwenden, wobei der Schwerpunkt auf einer soliden Reihe von Komponententests auf der Grundlage und einer minimalen Anzahl manueller Tests auf dem Höhepunkt liegt. Der Grund dafür ist einfach: Komponententests können einfach automatisiert und schnell ausgeführt werden, und die Umgebungsanforderungen sind unkompliziert im Vergleich zu Funktionstests, bei denen die Umgebungsanforderungen die Einrichtung und den kontinuierlichen Betrieb erschweren.

Die Herausforderung besteht jedoch darin, dass Unit-Tests im Vergleich zu manuellen Tests, die einfach zu definieren und auszuführen sind, bekanntermaßen schwer zu erstellen sind (obwohl Sie warten müssen, bis die Anwendung vollständig zusammengestellt ist, bevor Sie manuelle Tests durchführen können). Die Realität ist, dass Organisationen mit einem enden Eistüte kein Pyramide und die Durchführung vollständiger Tests bis zum Ende eines Sprints oder sogar bis zum Ende eines Freigabezyklus verzögern.

Der Schlüssel zu einer erfolgreichen Testpraxis besteht darin, nach der Pyramide zu streben und diese Techniken miteinander zu kombinieren, um den besten ROI für das Team zu erzielen - wo Investition Zeit und Rendite Qualität ist - hier kann Parasofts Suite von Entwicklungstest-Tools helfen.

Parasofts Ansatz ist es, das zu nehmen, was Sie "heute" haben, und Ihnen Sichtbarkeit auf und ab der Pyramide zu geben. Durch die Zusammenfassung granularer Abdeckungsdaten pro Testfall nicht nur für Komponententests, sondern auch für automatisierte und manuelle Funktionstests mit unseren Abdeckungs-Engines kann DTP alle Abdeckungsinformationen in einer Ansicht zusammenführen, um ein umfassendes Verständnis der Testabdeckung zu erhalten entlang der Pyramide - so können Teams die beste Testtechnik auswählen oder ihren ROI maximieren.

In dieser Version haben wir uns darauf konzentriert, das Unit-Testing-Fundament der Pyramide zu aktivieren.

  • Für C / C ++ - Entwickler wird in dieser Version das C / C ++ - Test 10.3 Desktop. Die Unit-Test-Funktionen von C / C ++ Test 9.6 nutzen die gesamte Leistung, einschließlich eines UI-gesteuerten Ansatzes zur Testerstellung, des Code-Isolations-Frameworks, fortschrittlicher Code-Coverage-Techniken und eines optimierten Workflows für eingebettete Geräte, und kombinieren ihn mit dem Verbesserte statische Analyse-Engine und verbesserte Rückverfolgbarkeit der Abdeckung der 10.x-Architektur.
  • Für Java-Entwickler führt diese Version wesentliche Verbesserungen an der Jtest Unit-Test-Assistent Dazu gehören die Möglichkeit, Testfälle auf Paket- / Projektebene in großen Mengen für die skalierbare Testerstellung zu erstellen, Datenmutationen beim Erstellen von Parametrertests für erweiterte Abdeckung und Testgrenzbedingungen anzuwenden und die Testerstellung für komplexe Spring WebMVC-Controller zu vereinfachen.

2. Management des Änderungsrisikos

Änderungen an vorhandenem / Legacy-Code sind der Hauptgrund für die Einführung neuer Fehler in die Codebasis. Das Beheben eines Problems hat häufig unbeabsichtigte Folgen und führt zu mehreren weiteren Fehlern. Das Verständnis des Umfangs der Änderung und der Auswirkungen auf die Gesamtqualität ist der Schlüssel zur Bestimmung der Maßnahmen, die zur Minderung dieses Risikos ergriffen werden müssen.

Parasoft hilft bei der Beantwortung der Frage: "Welche Auswirkungen hat die Änderung?" Durch die Analyse von Änderungen über Builds hinweg kann DTP nicht nur Änderungen an Ressourcen (dh "Dateien"), sondern auch Änderungen an den Qualitätsdaten (z. B. statische Analyseergebnisse) ermitteln und diese miteinander korrelieren, um die Auswirkungen sichtbar zu machen. In der neuen Version ist die Explorer wechseln ermöglicht Benutzern das Verstehen von Änderungen in statischen Analyseergebnissen, die Änderungen in den Ressourcen zugeordnet sind. Alle während der Überprüfung festgestellten Probleme können protokolliert, zur Behebung zugewiesen und direkt über die Weboberfläche von DTP verfolgt werden.

Eine weitere wichtige Frage, die wir beantworten, lautet: "Was soll ich tun, um das Risiko zu verringern?" Hier setzt die intelligente Analytik des Prozess-Intelligenz-Engine (PIE) in DTP bietet wertvolle Einblicke. In dieser Version wurden die folgenden Analysen in PIE mehrfach verbessert:

  • Änderungsbasiertes Testen - Warum bei jedem Sprint alles erneut testen? Mit änderungsbasierten Tests können Sie die Agilität beschleunigen, indem Sie die Teilmenge der Tests identifizieren, die erneut ausgeführt werden müssen, um die Codeänderungen zu validieren.
  • Modifizierte Code-Abdeckung - Stellen Sie sich vor, Sie haben eine Million Zeilen Legacy-Code mit nur 20% Codeabdeckung. Sie ändern jetzt 100 Codezeilen - woher wissen Sie, ob Ihre Abdeckung ausreichend ist? Dies hilft Ihnen, Zeit zu sparen und sich auf die Erstellung neuer Tests zu konzentrieren, um sicherzustellen, dass Sie den richtigen Teil der Codebasis testen.
  • Riskante Codeänderungen - Wie viel Risiko birgt der Code, den Sie gerade geändert haben? Wie gut wurden die Änderungen getestet? Wie gut sind sie gebaut? Wie hoch ist die bestehende Qualitätsverschuldung, die mit dem geänderten Code verbunden ist? Dies hilft bei der Beantwortung solcher Fragen, damit das Entwicklungsteam fundierte Entscheidungen darüber treffen kann, wie das Risiko am besten gemindert werden kann.
  • Teststabilitätsbewertung - Bedeutete dieser Testfehler etwas oder tut er das immer? Wo sind die wirklichen Regressionen? Die Bewertung der Teststabilität hilft Ihnen zu verstehen, (1) welche Fehler wichtig sind und (2) welche Tests Sie zur Stabilisierung benötigen, damit sie wertvolle Informationen liefern können.

3. Reduzierung der Compliance-Belastung

MISRA wurde ursprünglich für die Automobilindustrie entwickelt und ist branchenweit zum De-facto-Standard (z. B. Medizin, Industrielle Automatisierung) für Teams für eingebettete Softwareentwicklung geworden, die sich auf die Entwicklung zuverlässiger, vorhersehbarer und sicherer Geräte konzentrieren. 2016 stellte MISRA die Veröffentlichung vor MISRA-Konformität: 2016 - Erreichen der Konformität mit den MISRA-Codierungsrichtlinien, eine Reihe von Verfahren und Berichtspflichten zum Nachweis der Einhaltung der MISRA-Standards.

Der Parasoft C / C ++ - Test bietet vollständige Unterstützung für MISRA C: 2012, einschließlich der zusätzlichen Sicherheitsrichtlinien in Änderung 1. In dieser Version stellen wir eine neue vor MISRA-Compliance-Paket für Parasoft DTP, das die Erstellung aller erforderlichen Artefakte optimiert, um die Konformität zu demonstrieren.

Wie wir bei den Erweiterungen von MISRA (dh MISRA C: 2012, Änderung 1) gesehen haben, liegt ein branchenübergreifender Fokus auf der Anwendung bewährter Sicherheitsmethoden auf eingebettete Software, was teilweise auf die Explosion der Bereitstellung von IoT-zentrierten Systemen zurückzuführen ist. In dieser Version haben wir auch die vom Parasoft C / C ++ - Test durchgeführte Sicherheitsanalyse um mehrere neue Regeln für den CERT C-Sicherheitsstandard erweitert.

Hinter diesen Verbesserungen der Parasoft-Suite von Entwicklungstest-Tools stecken viele Details, über die Sie in den vollständigen Versionshinweisen lesen können.

Wenn Sie bereits Kunde sind, können Sie sich bei Parasoft umsehen Kundenportal um Zugriff auf die Versionshinweise zu erhalten und die neuesten Installationsprogramme für die neuesten Funktionen herunterzuladen. Wenn Sie neu bei Parasoft sind, bitte DEMOVERSION ANFORDERN und einer unserer Lösungsexperten beantwortet gerne Fragen und gibt Ihnen eine detailliertere Präsentation.

„MISRA“, „MISRA C“ und das Dreieckslogo sind eingetragene Marken von The MISRA Consortium Limited. ©The MISRA Consortium Limited, 2021. Alle Rechte vorbehalten.

Von Markus Lambert

Mark, Vice President of Products bei Parasoft, ist dafür verantwortlich, dass Parasoft-Lösungen den Unternehmen, die sie einsetzen, einen echten Mehrwert bieten. Mark ist seit 2004 bei Parasoft und arbeitet mit einem breiten Querschnitt von Global 2000-Kunden zusammen, von spezifischen Technologieimplementierungen bis hin zu umfassenderen Initiativen zur Verbesserung von SDLC-Prozessen.

Erhalten Sie die neuesten Nachrichten und Ressourcen zum Testen von Software sofort.