Erfahren Sie, wie die Continuous Quality Platform von Parasoft dabei hilft, Testumgebungen zu steuern und zu verwalten, um zuverlässig hochwertige Software zu liefern. Für Demo registrieren >>

BLOG

Parasoft C / C ++ Test 2020.1 ist da

Parasoft C / C ++ Test 2020.1 ist da Lesezeit: 6 Minuten

Einführung der ersten Version des Parasoft C / C ++ - Tests im Jahr 2020: 2020.1! Möglicherweise stellen Sie fest, dass das Versionsschema anders aussieht. In der Vergangenheit wurden alle Parasoft-Tools mit inkrementellen Nummern versioniert. Ab diesem Jahr enthalten die Versionen aller Veröffentlichungen das Jahr, gefolgt von der Nummer der Veröffentlichung in diesem Jahr.

In den letzten Monaten hat sich unser Team die Zeit genommen, um zu analysieren, wie der C / C ++ - Test so verbessert werden kann, dass er am besten zu sich entwickelnden Umgebungen passt. Wir haben neue Funktionen und Verbesserungen an den vorhandenen Kernfunktionen erstellt. Der C / C ++ - Test 2020.1 bietet eine Sammlung aufregender neuer Funktionen.

Unterstützung für sich entwickelnde Entwicklungsumgebungen

Die Entwicklung von Entwicklungsumgebungen beschleunigt sich. Neue, fortschrittliche Systeme, die häufig auf KI basieren, erfordern viel Quellcode, der nicht mit denselben Tools, Methoden und Workflows wie in der Vergangenheit entwickelt werden kann. Mit dem C / C ++ - Test 2020.1 wollten wir diesen evolutionären Schritten Rechnung tragen und eine Reihe von Angeboten erstellen, die genau das tun.

Visual Studio-Codeerweiterung für die statische Analyse

Es gibt einen Trend unter Entwicklungsteams, von schweren IDEs zu leichten und erweiterbaren Editoren überzugehen. Zum Teil, weil große Codebasen mit Millionen von Codezeilen für herkömmliche IDEs zu schwierig sind.

Visual Studio Code ist ein hervorragendes Beispiel für einen erweiterbaren Lightweight-Editor. In dem Jährliche Entwicklerumfrage zum Stapelüberlauf für 2019VS Code dominierte die Kategorie "Beliebteste Entwicklungsumgebungen" vollständig. Deshalb freue ich mich, Ihnen mitteilen zu können Erweiterung der statischen C / C ++ - Testanalyse für den Visual Studio-Code-Editor.

Wenn Sie mit VSCode entwickeln, müssen Sie Ihren bevorzugten Editor nicht mehr zurücklassen, um statische Analysen durchzuführen, Ergebnisse zu überprüfen oder gemeldete Verstöße zu beheben.

Vielleicht versuchen Sie, die MISRA- oder AUTOSAR C ++ - Konformität zu erreichen? Alles kann über VSCode erfolgen.

Die C / C ++ - Testerweiterung für VSCode befindet sich in der C / C ++ - Teststandarddistribution (vsix-Datei) oder kann über die Visual Studio Code Marketplace. Weitere Informationen zu den Funktionen der Erweiterung finden Sie in unserem kommenden VSCode-Blogbeitrag.

Dockerisierte Bereitstellungen

Containerisierte Bereitstellungen von Softwaretools sind das neue Mantra für Entwicklungsteams. Sie können:

  • Unterstützt nahtlos neue Compilerversionen.
  • Stellen Sie Bibliotheken Sicherheitspatches zur Verfügung.
  • Onboard 25 neue Entwickler im laufenden Betrieb.

Diese und viele andere umständliche und zeitaufwändige Aufgaben werden mit Containern erleichtert. Sie sind in vielerlei Hinsicht großartig.


Die Version von C / C ++ Test 2020.1 bietet eine Reihe von Verbesserungen, die die Verwendung mit Docker-Containern vereinfachen.

Der C / C ++ - Test unterstützt alle im Container bereitgestellten Compiler sowie die Bereitstellung des Parasoft C / C ++ - Testtools selbst im Container. Es ist einfach zu Konfigurieren Sie den Parasoft C / C ++ - Test so, dass er in einer containerisierten Umgebung funktioniert für statische Analyse und Unit-Tests. Sie können auch ein Container-Image erstellen, das zur Ausführung einer statischen Analyse bereit ist.

Möchten Sie mehr erfahren? Schauen Sie sich unser Webinar an, Containerisierte Bereitstellungen eingebetteter Entwicklungs-Toolchains.

CMake-Erweiterung

CMake ist wahrscheinlich das beliebteste Tool zum Verwalten von Builds und Tests, zum Packen von Software und zum Bereitstellen in der C / C ++ - Welt. Teams lieben CMake, weil es die Build-Ziele abstrahiert und automatisch die Build-Skripte für mehrere Build-Engines generiert. Es ist auch wichtig zu erwähnen, dass es sich leicht für große Projekte skalieren lässt.

Parasoft C / C ++ Test 2020.1 bietet eine CMake-Erweiterung, die die Einführung automatisierter Softwaretests in den Erstellungsprozess vereinfacht.

Die statische Analyse kann auch mithilfe von von CMake generierten JSON-Dateien mit Kompilierungsinformationen mühelos integriert werden. Erfahren Sie in unserem Blogbeitrag, wie Verwenden des Parasoft C / C ++ - Tests mit CMake für die statische Analyse.

Testen von C / C ++ - Testeinheiten mit CMake ist jetzt einfacher gemacht. Spezielle Unit-Testziele, die automatisch die erforderliche Testinfrastruktur generieren, können in CMakeLists.txt-Dateien mit einer dedizierten Funktion definiert werden, die mit der C / C ++ - Testerweiterung bereitgestellt wird.

Boosting der Creation Unit Tests

Die Erstellung produktiver Komponententests war schon immer eine Herausforderung. Die Einhaltung funktionaler Sicherheitsstandards erfordert qualitativ hochwertige Software, was den Bedarf an Testsuiten erhöht, die Statistiken mit hoher Codeabdeckung beeinflussen und erstellen. Teams benötigen Unit-Testfälle, mit denen sie eine 100% ige Codeabdeckung erreichen können.

Das ist leichter gesagt als getan. Das Analysieren von Zweigen im Code und der Versuch, Gründe zu finden, warum bestimmte Codeabschnitte nicht behandelt werden, stehlen weiterhin Zyklen von Entwicklungsteams.

Parasoft Innovation löst das Problem

Mit der Veröffentlichung des C / C ++ - Tests wird die brandneue Funktionalität eingeführt, mit deren Hilfe die Deckungslücken im Code geschlossen werden können. Parasoft entdeckte, wie mithilfe der erweiterten statischen Code-Analyse (Daten- und Kontrollflussanalyse) Werte für die Eingabeparameter ermittelt werden können, die zum Ausführen bestimmter Zeilen ungedeckten Codes erforderlich sind.


Wählen Sie die Codezeile aus, die Sie abdecken möchten, und der Coverage Advisor teilt Ihnen mit, welche Eingabewerte, globalen Variablen und externen Aufrufe Sie benötigen, um den Code zu stimulieren und eine Abdeckung zu erhalten.

Parasoft präsentierte diese Funktion auf der Eingebettete Welt 2020 Veranstaltung, und es wurde sowohl vom Konferenzpublikum als auch von Fachleuten aus der Industrie, die unseren Stand besuchten, sehr gut aufgenommen.

Auf maschinellem Lernen basierende automatische Priorisierung statischer Analyseergebnisse

Eine der größten Herausforderungen bei der Einführung der statischen Analyse ist die Fähigkeit, wichtige Verstöße von den weniger wichtigen zu unterscheiden. Kritische Fragen sollten zuerst angesprochen werden. Befunde mit niedriger Priorität oder verrauschte Befunde sollten entweder ignoriert oder die Reaktion verschoben werden, bis kritische Ergebnisse behoben sind.

In der Version C / C ++ Test 2020.1 führt Parasoft eine innovative Funktionalität ein, die auf AI und ML basiert, um die statische Analyse durch eine automatisierte Priorisierungsfunktion zu verbessern. Die Funktionalität erweitert die DTP-Kernfunktionen von Parasoft, indem sie aus der Interaktion des Entwicklers mit den statischen Analyseergebnissen lernt und das trainierte Modell anwendet, um neu gefundene Verstöße automatisch zu priorisieren.

Diese Innovation ermöglicht es Unternehmen, die Produktivität sofort zu verbessern, indem sie den manuellen Aufwand für ihre Softwarequalität reduzieren und sicherstellen, dass sie ihre kostbare Zeit für das Wesentliche aufwenden.

Aktualisiert MISRA C: 2012 Änderung 2

MISRA C: 2012 bleibt der beliebteste Codierungsstandard für die Programmiersprache C. Es wurde kürzlich aktualisiert, um die Entwicklung der C-Sprache zu unterstützen. MISRA C: 2012 Änderung 2 unterstützt jetzt die Codierungsstandards C11 und C18.

Änderungsantrag 2 verfolgt den restriktiven Ansatz und verbietet die Verwendung der neuen Spracherweiterungen, die noch nicht vollständig auf ihre Auswirkungen auf die Sicherheit analysiert wurden - es gibt neue Richtlinien dafür. Spezifischere Richtlinien werden in Zukunft erwartet.

Parasoft ist der erste Anbieter, der MISRA C: 2012, Änderung 2, unterstützt. Die Veröffentlichung des C / C ++ - Tests 2020.1 deckt den gesamten neuen Richtliniensatz ab.

Verbessertes Unit Testing Framework zur besseren Unterstützung des Testens von Code auf Kernel-Ebene

Eingebettete Geräte mit verschiedenen Sensoren und Aktoren werden immer komplizierter und auch der Quellcode für Treiber wird immer komplexer. Viele Teams haben Schwierigkeiten, den Testprozess zu entwickeln, mit dem sie ihre Projekte für die funktionale Sicherheit zertifizieren können.

Wir haben mehrere Anfragen erhalten, um den Prozess zu automatisieren. Unser erweitertes Unit-Testing-Framework wurde erfolgreich zum Testen von Linux- und LynxOS 178-Kernelcode verwendet.

AUTOSAR C ++ Regelsatz

Der Parasoft C / C ++ - Test bietet eine 100% ige Abdeckung der erforderlichen automatisierten Richtlinien und ist führend bei der Unterstützung des AUTOSAR C ++ - Codierungsstandards. Parasoft arbeitet weiterhin an einigen Checkern für die teilweise automatisierte Kategorie.

Dies ist die Kategorie des Standards, die nicht vollständig durch die statische Analyse ersetzt werden kann (aufgrund der Art der Richtlinien), aber es gibt viel Platz, wo das Tool helfen und den manuellen Aufwand reduzieren kann. Die Version Parasoft C / C ++ Test 2020.1 enthält fünf neue Prüfer für den wichtigsten C ++ - Codierungsstandard.

Vorbereitung auf den C / C ++ - Test 2020.2

Mit der gegenwärtigen globalen Gesundheitskrise erleben wir alle einen seltenen Moment in der Geschichte. Die Mitarbeiter von Parasoft haben von zu Hause aus hart gearbeitet, um die Version C / C ++ Text 2020.1 mit allen von uns versprochenen Funktionen erfolgreich bereitzustellen. Wir bleiben weiterhin konzentriert und haben bereits begonnen, an der nächsten Version zu arbeiten. 2020.2 kommt im Oktober. Bleiben Sie dran!

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

Geschrieben von

Miroslaw Zielinski

Zu den Spezialitäten von Miroslaw, dem Produktmanager für die eingebetteten Testlösungen von Parasoft, gehören C / C ++, RTOS, statische Code-Analyse, Komponententests, Verwaltung der Softwarequalität für sicherheitskritische Anwendungen und Einhaltung der Sicherheitsstandards durch die Software.

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