abapOpenChecks kann bei der Sicherstellung der Qualität von Code in Kombination mit dem Code Inspector eine große Hilfe darstellen – unser Entwickler Marco Orts berichtet in dieser kurzen Einführung über eigene Erfahrungen und die Anwendung der Komponente.

 

Warum statische Code Analyse?

Das Scannen von Quellcode zum Zweck der Qualitätssicherung ist ein wichtiges Thema. Ich selbst habe zu Beginn meiner Tätigkeit bei der ososoft bei einem Kunden versucht Codeprüfungen mit Transportsperren einzuführen. Ein Vorgehen, das rückblickend nicht funktionieren kann, da hierdurch – in der Wahrnehmung eines Entwicklers, aber auch tatsächlich – der tägliche Betrieb behindert wird.

 

Ein besserer Einsatz verwendet solche Codeprüfungen für einen ganzheitlichen Blick auf die Codebasis, der Problembereiche identifiziert und so helfen, kann technische Schulden abzubauen. Ein solcher Einsatz als analytisches Tool ist auch bei Entwicklern um ein Vielfaches akzeptierter als in einer forcierenden Funktion.

 

Was ist abapOpenChecks?

abapOpenChecks ist ein Open Source Projekt, in dem Codeprüfungen für den Code Inspector (SCI) und das ABAP Test Cockpit zu finden sind. Der SAP Standard bringt schon einige Prüfungen mit, die durch weitere aus dem Repository ergänzt werden können. Die Prüfungen sind detaillierter und tiefergehender als die des SAP Standards. Insbesondere wird mehr Wert auf Überprüfungen des Code Stylings gelegt, was den vorliegenden Code leichter lesbar und damit auch einfacher wartbar macht, aber es werden auch einige klassische Fehlerquellen behandelt.

 

Ein wichtiger Aspekt von abapOpenChecks ist seine Quelloffenheit und seine sehr großzügige Lizenz. Dadurch können die Codeprüfungen überall ohne Vorbedingungen genutzt und erweitert werden. Hier findet sich der Link auf die zugehörige GitHub Seite.

Installation

Die Installation von abapOpenChecks erfolgt über abapGit. Nachdem das Projekt geklont wurde, müssen die Checks noch im SAP Code Inspector aktiviert und konfiguriert werden. Diese Schritte sind abhängig von der eingesetzten SAP Version. Danach kann direkt mit den neuen Prüfungen gearbeitet werden.

SAP Code Inspector Checks

Die Prüfungen selbst sind verschiedenster Natur. Prüfungen zum Codestyling identifizieren beispielsweise doppelte Leerzeichen, die sich eingeschlichen haben oder Leerzeilen innerhalb von Anweisungen, die die Lesbarkeit erschweren. Es gibt weiterhin Prüfungen zu klassischen Entwicklungsprinzipien, die zum Beispiel nach identischen Codeblöcken suchen oder prüfen, ob eine  Fehlerbehandlung implementiert ist. Eine dritte Kategorie an Prüfungen soll Fallstricke in der Programmierung aufdecken und vermeiden. Ein Beispiel hier ist die Prüfung auf CHECK und EXIT außerhalb von Schleifen.

Fazit

Abschließend bleibt nur zu sagen: abapOpenCheck bereichert die Standardprüfungen um über 100 weitere, die sich aus verschiedenen Bereichen zusammenstellen. Wer bereits den SAP Code Inspector oder das ABAP Testcockpit nutzt, sollte prüfen, ob die abapOpenChecks das bestehende Vorgehen bereichern können und wer diese Werkzeuge noch nicht nutzt, sollte bei ihrer Einführung die Ergänzung durch abapOpenChecks erwägen!

 

Sollten Sie hierzu weitere Fragen haben, wenden Sie sich gerne an uns! Unsere Entwickler können hier die Antworten liefern.