This is a test message to test the length of the message box.
Login
ABAP Tools Arbeiten mit Eclipse
Erstellt von Software-Heroes

ABAP Tools - Quick Actions und Highlighting (ABAP Unit)

83

Mit dem letzten Release der ABAP Development Tools kamen für die ABAP Entwicklung die Quick Actions im Bereich ABAP Unit dazu, hier schauen wir sie uns etwas näher an.

Werbung


In diesem Artikel gehen wir auf die neuen Quick Action und das Code Highlighting im Bereich ABAP Unit ein. Einige Features werden aktuell nur im ABAP Environment in der BTP angeboten, erhalten sicherlich in Zukunft aber auch einen Downport nach On-Premise.

 

Einleitung

Im ABAP Development Tools Release 3.42 wurden die Quick Action im Bereich ABAP Unit eingeführt. Diese Aktionen sollen beim Schreiben von Unit Tests etwas Arbeit abnehmen und dich als Entwickler schneller machen. Quick Actions sind meist im Code integrierte Icons oder Buttons, die weitere Aktionen im Zusammenhang mit der aktuellen Zeile oder Auswahl auslösen.

 

Vorbereitung

Zuerst einmal benötigen wir eine kleine Klasse, an der wir die verschiedenen Optionen einmal demonstrieren können. Dazu definieren wir uns eine einfache Klasse mit zwei öffentlichen Methoden.

CLASS zcl_bs_demo_quick_actions DEFINITION
  PUBLIC FINAL
  CREATE PUBLIC.

  PUBLIC SECTION.
    METHODS concatenate_string
      IMPORTING id_text1         TYPE string
                id_text2         TYPE string
      RETURNING VALUE(rd_result) TYPE string.

    METHODS adding_numbers
      IMPORTING id_number1       TYPE i
                id_number2       TYPE i
      RETURNING VALUE(rd_result) TYPE string.
ENDCLASS.


CLASS zcl_bs_demo_quick_actions IMPLEMENTATION.
  METHOD concatenate_string.
    rd_result = id_text1 && id_text2.
  ENDMETHOD.


  METHOD adding_numbers.
    rd_result = id_number1 + id_number2.
  ENDMETHOD.
ENDCLASS.

 

Die erste Methode fügt zwei Strings zusammen und die zweite Methode berechnet die Summe zweier Zahlen. Die beiden Methoden nutzen wir gleich für unsere Tests.

 

Quick Actions

Schauen wir uns im ersten Schritt die Quick Actions an, wie du sie konfigurierst und für dich nutzen kannst.

 

Konfiguration

Die Quick Actions findest du in den allgemeinen Einstellungen im Menü unter "Window -> Preferences", dann im Dialog unter dem Baum "ABAP Development -> ABAP Unit -> Code Minings".

 

Dort kannst du verschiedene Optionen aktivieren, in unserem Beispiel aktivieren wir alle Funktionen. Damit die Funktionen nun greifen, solltest du Eclipse einmal neustarten.

 

Anlage Test

Wechseln wir nun auf den Reiter "Test Classes", um in den Bereich der Testklassen zu kommen, wo üblicherweise unsere Testfälle definiert werden. Dort findest du bereits die erste Aktion.

 

Wenn du auf die Aktion klickst, wird entsprechendes Testcoding angelegt, dies entspricht den entsprechenden Templates aus Eclipse. In Zukunft könnte hier zum Beispiel per AI schon passende Testmethoden für unsere öffentlichen Methoden definiert werden. Das Ergebnis sieht nun wie folgt aus.

 

Im nächsten Schritt implementieren wir zwei Testfälle, um etwas Testcoding zu haben. Der erste Testfall wird dabei auf Grün (Erfolgreich) und der zweite auf Rot (Fehlerhaft) laufen. Die entsprechende Implementierung der Testklasse wie folgt:

CLASS ltc_my_unit_test DEFINITION FINAL
  FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.

  PRIVATE SECTION.
    METHODS run_mathematics FOR TESTING.
    METHODS run_strings     FOR TESTING.
ENDCLASS.


CLASS ltc_my_unit_test IMPLEMENTATION.
  METHOD run_mathematics.
    DATA(lo_cut) = NEW zcl_bs_demo_quick_actions( ).

    DATA(ld_result) = lo_cut->adding_numbers( id_number1 = 10
                                              id_number2 = 5 ).

    cl_abap_unit_assert=>assert_equals( exp = 15
                                        act = ld_result ).
  ENDMETHOD.

  METHOD run_strings.
    DATA(lo_cut) = NEW zcl_bs_demo_quick_actions( ).

    DATA(ld_result) = lo_cut->concatenate_string( id_text1 = `Hello`
                                                  id_text2 = `ABAP Unit` ).

    cl_abap_unit_assert=>assert_equals( exp = `Hello ABAP Unit`
                                        act = ld_result ).
  ENDMETHOD.
ENDCLASS.

 

Ausführung Test

Nachdem wir nun das Coding aktiviert haben, erscheinen die nächsten Quick Action, je nachdem, was du bei der Konfiguration gewählt hast.

 

Über die verschiedenen "Run" Buttons können wir nun einzelne Testfälle oder die ganze Testklasse ausführen. Im ersten Beispiel führen wir nur die Methode RUN_MATHEMATICS aus und erhalten das Ergebnis direkt im Quellcode eingeblendet.

 

An der Methode findest du den Status und die Laufzeit, an der Testklasse die Anzahl der ausgeführten Testfälle, sowie den Gesamtstatus. Als zweiten Testfall führen wir nun alle Testfälle der Testklasse aus. Der entsprechende Status kann nun eingesehen werden.

 

Im Grunde kannst du dann mit dem Fixen des Bugs in der Methode beginnen und diese ausführen, bis das Ergebnis passt. So müssen nicht jedes Mal alle Methoden ausgeführt werden, um das Delta zu validieren.

 

Highlighting

Die zweite Funktion in diesem Artikel umfasst das Code-Highlighting in ABAP Unit.

 

Konfiguration

Die Konfiguration findest du in den allgemeinen Einstellungen im Menü unter "Window -> Preferences", dann im Dialog unter dem Baum "ABAP Development -> ABAP Unit -> Test Code Highlighting".

 

Hier kannst du wieder die verschiedenen Einstellungen aktivieren und hast später noch die Möglichkeit, die Farben für die einzelnen Optionen zu setzen.

 

Anzeige

Welche Auswirkungen haben die Einstellungen? Oben hattest du bereits die Auswirkungen gesehen und hier noch einmal der Screenshot.

 

Die einzelnen Bestandteile deines Testcodes werden nun farblich hervorgehoben, je nachdem um welches Objekt es sich handelt. Wenn du mit der Maus über den hervorgehobenen Block gehst, erhältst du eine Information dazu.

 

Fazit

Damit stehen dir in den ADTs nun zwei zusätzliche Funktionen zur Verfügung, um schnell und einfach Unit Tests zu schreiben, auszuführen und den Test-Code zu analysieren. Die Funktionen haben in Zukunft sicherlich noch Potential für weitere AI Features.

 

Quelle:

SAP Help - How to Write ABAP Unit Tests


Enthaltene Themen:
ToolsADTEclipseQuick Actions
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden 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.


ABAP Tools - Arbeiten mit Eclipse (CDS Templates)

Kategorie - ABAP

Wieder das falsche CDS Template bei der Erstellung ausgewählt? Hier ein kleiner Tipp um nachträglich noch den View in ABAP zu korrigieren.

02.07.2024

ABAP Tools - Tool Bridge konfigurieren

Kategorie - ABAP

Schauen wir uns einmal an, was die Tool Bridge in den ABAP Development Tools ist und wie du sie ganz einfach konfigurieren kannst.

28.05.2024

ABAP Tools - Arbeiten mit Eclipse (Objekt starten)

Kategorie - ABAP

In diesem Artikel ein kleiner Tipp zum direkten Start von Objekten, ohne den Umweg über die Anzeige des Objekts.

19.03.2024

ABAP Tools - Arbeiten mit Eclipse (Tabellenanlage)

Kategorie - ABAP

In diesem Artikel gehen wir den Flow zur Anlage von Tabellen in den ABAP Development Tools durch und wie du ihn einfach gestalten kannst.

22.12.2023

ABAP Tools - Arbeiten mit Eclipse (Quellcodevergleich)

Kategorie - ABAP

Hier schauen wir uns an, wie wir mit den ABAP Development Tools Quellcode vergleichen können, einmal über Systeme hinweg und einmal die letzten Versionen.

01.12.2023