This is a test message to test the length of the message box.
Login
|
BTP ATC Automation
Erstellt von Software-Heroes

BTP - ATC Automatisierung

515

Wie kannst du dein ABAP Test Cockpit in der BTP automatisieren und dir die Ergebnisse zuschicken lassen, wenn es einmal Probleme gibt? In diesem Artikel gehen wir auf die Details ein.

Werbung


In diesem Artikel gehen wir auf die aktuellen Möglichkeiten des ABAP Test Cockpit für die Automatisierung in der BTP ein. Dazu schauen wir uns den Standard an und wie wir den Rest übernehmen können.

 

Einleitung 

Das ABAP Test Cockpit im SAP BTP ABAP Environment bietet eine zentrale Lösung an, um alle Backendsysteme automatisch zu prüfen. Im Gegensatz zur klassischen On-Prem Transaktion ATC, funktionieren allerdings einige Prozesse im ABAP Environment anders. Daher schauen wir uns die aktuellen Möglichkeiten an und wie wir den Prozess möglichst automatisieren können.

 

Prüfvariante

Im ersten Schritt benötigen wir eine Prüfvariante, um eine Prüfung im System durchführen zu können. In dieser Prüfvariante wollen wir die eigentliche Prüfung definieren, aber auch den Scope der Prüfung einstellen, damit die passenden Entwicklungsartefakte geprüft werden.

 

Apps

Mit dem Release 2508 wurde die Anwendung "Custom Code Migration" auf zwei neue Tiles aufgeteilt. Damit soll die Anwendung verschiedenen Rollen zugeordnet werden, grundsätzlich wird die gleiche Anwendung aufgerufen. Über die Anwendungen kannst du einen neuen Lauf einplanen.

 

 

Projekt

In der App legen wir ein neues Projekt an. Über den "Create" Button kannst du ein neues "Custom Code Analysis Project" anlegen. Dieses benötigen wir, um einen eigenen Prüflauf zu starten.

 

In der Variante können wir nun einen Namen vergeben, dann wählen wir ein Prüfvariante aus. Hier kannst du eigene Prüfvarianten definieren, aber auch alle Standardvarianten wählen. Grundsätzlich können wir auch ein Remotesystem angeben, wenn wir ein On-Prem System prüfen wollen. In diesem Fall prüfen wir das lokale System.

 

Im nächsten Schritt können wir den Scope der Prüfung definieren. Wollen wir bestimmte Pakete prüfen, dann können wir hier all unsere Pakete angeben. Wollen wir alles prüfen oder bestimmte Pakete ausschließen, dann können wir dies im unteren Teil einstellen. Sind wir damit fertig, entfernen wir noch das Flag, damit die Prüfung nicht direkt im Anschluss startet.

 

Job

Um nun die Prüfung automatisieren zu können, können wir einen Job im System einplanen. Hier finden wir die Anwendung "Schedule Custom Code Analysis", die im Grunde die Standard App für die Application Jobs verwendet.

 

Über "Create" kannst du einen neuen Job erstellen, hier sollte die richtige Variante bereits voreingestellt sein. Weiterhin kannst du einstellen, ob der Job einmalig oder wiederkehrend laufen soll. Grundsätzlich führt der Job nun die Prüfung aus und persistiert das Ergebnis auf der Datenbank.

 

Ergebnisse

Die Ergebnisse des Laufs werden im System persistiert. Seit dem Release 2508 gibt es nun auch Core Data Services im Standard, die du für das Lesen nutzen kannst. Hierfür gibt es die Views:

  • SATC_API_RESULT_HEADERS - Hier findest du die verschiedenen Läufe, die durchgeführt wurden. Du kannst nach Zeitstempel und anderen Kriterien filtern.
  • SATC_API_FINDINGS - Die verschiedenen Findings eines Prüflaufs kannst du in dieser Tabelle finden. Neben der Meldung und der Klassifizierung findest du weitere Informationen zu den Findings.

 

Automatisierung

Damit wäre so weit der aktuelle Standard erklärt. Wie können wir hier noch den Schritt des Mailversands automatisieren? Dazu verwenden wir eine kleine Eigenentwicklung, die du auch auf GitHub findest, wenn du sie ebenfalls verwenden willst.

 

Application Job

Da wir direkt im Anschluss die Ergebnisse prüfen wollen, erstellen wir einen Application Job, den wir später als zweiten Schritt in der Einplanung definieren wollen. Dieser Job soll das Ergebnis des Prüflaufs über die Core Data Services extrahieren und nach bestimmten Kriterien aufbereiten.

 

Implementierung

Bei der Implementierung der Logik lesen wir die letzten Läufe aus den beiden Core Data Services, prüfen ob die entsprechenden Fehlerkategorien enthalten sind und bereiten die E-Mail für den Versand vor. Die Daten bereiten wir dann in der Mail als HTML auf. Den Code findest du im verlinkten GitHub Repository, wenn du dir die verschiedenen Objekte und Bestandteile anschauen möchtest. Zum einfachen Handling der Fehler und Nachrichten haben wir den ABAP Message Logger verwendet.

 

Template

Damit unser Benachrichtigungsjob direkt nach unserer Prüfung gestartet wird, erstellen wir ein neues Template im System. Dazu gehen wir in die App "Application Job Templates" und erstellen über "Create" ein neues Template. Hier geben wir einen Namen und können die Sichtbarkeit einstellen.

 

Über den Button "Maintain Steps" im unteren Bereich, können wir nun unsere Schritte hinzufügen. Mit "Save Job Template" werden die beiden Schritt hinzugefügt. Im Template können wir Standardwerte setzen, das können wir aber auch später bei der Einplanung des Jobs machen.

 

Mit "Save" speichern wir das Template und können die App wieder verlassen.

 

Ausführung

Um nun den Job zu einzuplanen, wechseln wir wieder in die App "Application Jobs" und legen über "Create" einen neuen Job an. Hier wählen wir für den Start das gewählte Template aus. Möchtest du den Job regelmäßig einplanen, dann kannst du hier noch die Optionen im zweiten Schritt befüllen. Im dritten Schritt befüllen wir die Parameter und wählen den Prüflauf aus.

 

Für unsere Benachrichtigungen wollen wir den letzten ATC Lauf verwenden, daher stellen wir die Anzahl auf 1. Wir möchten gern eine Mail erhalten, wenn die Priorität auf Fehler oder Warnung steht. Dann tragen wir noch Absender und Empfänger für den E-Mail Versand ein.

 

Mit "Schedule" wird der Job ausgeführt, je nach Einstellung wird dieser sofort gestartet. Sind alle Kriterien erfüllt, sollten wir dann auch eine Mail erhalten.

 

Fazit

Damit wurde die ABAP Test Cockpit im System automatisiert und wir erhalten zum Abschluss eine E-Mail. Zusätzlich können wir noch steuern, dass wir nur eine E-Mail erhalten, wenn Fehler in der Prüfung sind. Damit können wir mit einer kleinen Eigenentwicklung den Prozess automatisieren.


Enthaltene Themen:
BTPABAP EnvironmentATCAutomatisierung
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


BTP - E-Mail Anbindung OAuth 2.0

Kategorie - ABAP

Die Mail-Anbindung per Basic Auth funktioniert nun nicht mehr. Welche Möglichkeiten bestehen alternativ für die Anbindung von Office365 an das ABAP Environment und wie kannst du sie einrichten?

13.10.2026

BTP - Pakete und SWC bereinigen

Kategorie - ABAP

Du möchtest ein Pakete im ABAP Environment löschen, doch es gibt noch Objekte die blockieren und vielleicht gar nicht mehr in Eclipse sichtbar sind? Schauen wir uns dazu einige Punkte zur Bereinigung an.

25.09.2026

RAP - Sales App Learnings

Kategorie - ABAP

Das Tutorial für die Sales App ist zu Ende und dieses Mal wurde eine große Bandbreite an Themen und Bereichen adressiert. In diesem Artikel schauen wir auf das Gelernte und wichtige Punkte.

08.09.2026

RAP - Navigation (App to App)

Kategorie - ABAP

Wie kannst du eigentlich innerhalb deiner Fiori Anwendung auf eine andere Anwendung navigieren, ohne das der User die App manuell wechseln muss? Schauen wir uns die Navigation zwischen Fiori Apps an.

01.09.2026

RAP - Singleton Pattern

Kategorie - ABAP

Das Singleton Pattern in RAP gibt es schon länger, doch wie genau funktioniert es und wie kannst du es auch für andere Use-Cases nutzen? Schauen wir uns dazu die Details in diesem Artikel an.

25.08.2026