Ansicht
Dokumentation

RBAMTEST_AUNIT_TRACE - Test RBAM Trace

RBAMTEST_AUNIT_TRACE - Test RBAM Trace

BAL Application Log Documentation   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Verwendung

Das Programm steuert den ABAP Unit Test für den RBAM-Trace. Ziel dieses Tests ist, festzustellen, ob die erwartete Anzahl von Trace-Einträgen erzeugt werden und ob diese zu den auslösenden Berechtigungsprüfungen plausibel sind (Effekt stimmt, angewendete Policy stimmt usw.).

Ablauf des Programms.

  • Es wird das UNIT Test Programm RBAMTEST_INTEGRATION_MATRIX mit Hilfe von SUMBIT gestartet. Spezielle Parameter-Einstellungen sorgen dafür, dass nur die Operation RETRIEVE getestet wird und dass der RBAM Trace in einem speziellen lokalen Modus gestartet wird. Die Trace-Einstellungen gelten dadurch nur für den gerade aktiven internen Modus. Evtl. andere vorhandene Trace-Einstellungen werden durch nicht berührt. Durch den Ablauf dieses Programms werden definierte Einträge in den RBAM-Trace geschrieben, die später geprüft werden können.
  • Nachdem der Intergrations-Test beendet sich der Trace automatisch (Ende des Modus). Die Trace-Einträge werden mit Hilfe der RBAM Trace API-Methode READ_LOG von der Datenbank gelesen. Dabei wird explizit auf die RBAM-Testbenutzer "!RBAMxx" selektiert.
  • Im nächsten Schritt werden die Trace-Einträge zerlegt und in eine besser verarbeitbare Struktur überführt. Da die wesentlichen Daten eines Trace-Eintrags in einer langen formatierten Zeichenkette abgelegt sind, beruht der Zerlegungsprozess auf diesem Format. Bei Änderungen an diesem Format - besonders bei Änderung von Schlüsselworten - muss die Zerlegung angepasst werden.
  • Der Zerlegungsprozess erzeugt zwei interne Tabellen, eine für das Businessobjekt "Customer" eine andere für "Invoice".
  • Nachdem die beiden Tabellen erstellt wurden und damit alle Vorbereitungen abgeschlossen sind, beginnt der eigentliche Unit-Test. Die Prüfung erfolgt mit Hilfe des IAT Test Framework und der Fixture- Klasse CL_RBAMTEST_TRACE_FIXTURE. Wie bei diesem Framework üblich, werden Tabellen im HTML-Format als Testbeschreibungsobjekte benötigt. Es liegt nahe, die Tabellen wieder zu verwenden, die bereits im ersten Schritt beim Ablauf des Programms RBAMTEST_INTEGRATION_MATRIX benutzt wurden. Schließlich sollen ja die genau diese Berechtigungsprüfungen bei der Prüfung herangezogen werden. Da die Testbeschreibungstabellen aber immer den Namen der Fixture-Klasse enthalten, müssen Kopien der Integration Test Tabellen - mit geändertem Namen - angelegt werden. Da nur die Operation RETRIEVE in den Test eingeht, brauchen auch nur diese beiden Tabellen kopiert werden. Der Name des Verzeichnisses im Mime-Repository ist /SAP/BC/RBAM/Testdata/Runtime/Trace.
  • Gestartet werden die Unit-Tests schließlich durch den Aufruf der Framework-Methode CL_IAT_TESTRUNNER=>RUN( ).

Integration

Programm wird im Rahmen des Verifikationsprozess VER06359 ausgeführt.

Voraussetzungen

Der Test ist abhängig von den oben erwähnten Testbeschreibungstabellen im Mime-Repository-Verzeichnis /SAP/BC/RBAM/Testdata/Runtime/Trace und von der Fixture-Klasse CL_RBAMTEST_TRACE_FIXTURE. Die für den Trace-Test verwendeten Tabellen müssen Inhaltlich mit den Tabellen übereinstimmen, die beim Integrationstest verwendet werden (siehe oben).

Funktionsumfang

Selektion

Standardvarianten

Ausgabe

Falls der Unit-Test Fehler findet, werden diese im ABAP Unit Browser angezeigt.

Aktivitäten

Beispiel






General Material Data   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3998 Date: 20240531 Time: 144241     sap01-206 ( 98 ms )