<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=ABAP_Unit</id>
	<title>ABAP Unit - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=ABAP_Unit"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=ABAP_Unit&amp;action=history"/>
	<updated>2026-05-22T04:00:32Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=ABAP_Unit&amp;diff=1476773&amp;oldid=prev</id>
		<title>imported&gt;TaxonBot: Bot: Überarbeitung veralteter Syntax / HTML-Validierung</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=ABAP_Unit&amp;diff=1476773&amp;oldid=prev"/>
		<updated>2021-04-10T11:59:53Z</updated>

		<summary type="html">&lt;p&gt;Bot: Überarbeitung veralteter Syntax / &lt;a href=&quot;/index.php?title=H:LINT&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;H:LINT (Seite nicht vorhanden)&quot;&gt;HTML-Validierung&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;ABAP Unit&amp;#039;&amp;#039;&amp;#039; ist die [[xUnit]]-Umsetzung für die Programmiersprache [[ABAP]]. ABAP Unit ist dabei direkt in die Sprache ABAP und die [[Integrierte Entwicklungsumgebung|Entwicklungsumgebungen]] SE80 sowie Eclipse integriert.&lt;br /&gt;
&lt;br /&gt;
Die [[Modultest|Modultests]] sind als spezielle Testklassen modelliert. Eine solche Testklasse hat i.&amp;amp;nbsp;d.&amp;amp;nbsp;R. eine oder mehrere Testmethoden und optional spezielle Methoden zum Auf- und Abbau des Testumfeldes. Die Testklassen können als lokale Klassen direkt im zu testenden Programm enthalten sein. Dadurch kann es nie zu abweichenden Versionen zwischen Modultest und getester Funktionalität kommen. Durch die Sprachintegration ist dabei eine strikte Trennung zwischen Produktiv- und Test-Code sichergestellt. So können die Testklassen den Produktiv-Code ausführen, aber nicht umgekehrt.&lt;br /&gt;
&lt;br /&gt;
Es ist möglich, die Modultests direkt aus den Editoren und dem &amp;#039;&amp;#039;&amp;#039;Repository Browser&amp;#039;&amp;#039;&amp;#039; der SE80 auszuführen ({{Taste|Ctrl}}+{{Taste|Shift}}+{{Taste|F10}}). In neueren Versionen (&amp;gt;= Netweaver 7.02) gibt es einen speziellen &amp;#039;&amp;#039;&amp;#039;ABAP Unit Browser&amp;#039;&amp;#039;&amp;#039; und eine Anbindung an die Abdeckungs- oder Coverage-Ermittlung. Mit Hilfe des Werkzeuges &amp;#039;&amp;#039;&amp;#039;Code Inspector&amp;#039;&amp;#039;&amp;#039; kann man viele Modultests auf einmal ausführen, z.&amp;amp;nbsp;B. alle Modultests, die in Programmen eines Paketes enthalten sind. Es gibt in ABAP Unit keine  Möglichkeit, einzelne Modultests programmatisch zu [[Testsuite|Test-Suites]] zusammenzufassen. Als Workaround können jedoch Selektionsvarianten zum Programm RS_AUCV_RUNNER mit unterschiedlichen zu testenden Paketen, Klassen, Funktionsgruppen und Programmen angelegt werden.&lt;br /&gt;
&lt;br /&gt;
Ab ABAP 7.40 steht mit der Klasse &amp;lt;span style=&amp;quot;font-family:monospace;&amp;quot;&amp;gt;CL_ABAP_TESTDOUBLE&amp;lt;/span&amp;gt; ein syntaktisch an [[EasyMock]] angelehntes Mocking-Framework zur Verfügung.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://blogs.sap.com/2015/01/05/abap-test-double-framework-an-introduction/ |titel=ABAP Test Double Framework – An Introduction {{!}} SAP Blogs |abruf=2020-01-07}}&amp;lt;/ref&amp;gt;&amp;lt;!-- TODO: Beispiel --&amp;gt; ABAP 7.50 führt mit Test-Seams die Möglichkeit des partiellen Mockings ein, indem einzelne Codebereiche (z. B. die bis dato nicht mockbaren Funktionsbausteinaufrufe) im Unit-Test redefiniert werden können.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://blogs.sap.com/2015/10/23/abap-news-for-750-test-seams-and-injections/ |titel=ABAP News for Release 7.50 – Test Seams and Test Injections {{!}} SAP Blogs |abruf=2020-01-07}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ab ABAP 7.52 können mittels der Klasse &amp;lt;span style=&amp;quot;font-family:monospace;&amp;quot;&amp;gt;CL_OSQL_TEST_ENVIRONMENT&amp;lt;/span&amp;gt; Datenbank-Tabellen gemockt werden. Die gemockten Tabellen ersetzen die Originale in Open-SQL-Anweisungen ohne Änderungen am produktiven Coding, sodass im Testfall nicht auf produktiven Daten gearbeitet wird.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://help.sap.com/viewer/c238d694b825421f940829321ffa326a/latest/en-US/1432ca1fc7b547d493f691cdd09245ae.html |titel=SAP Help Portal |abruf=2019-04-01}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;ABAP&amp;quot;&amp;gt;&lt;br /&gt;
class tc_text_buffer definition final for testing&lt;br /&gt;
  duration short&lt;br /&gt;
  risk level harmless.&lt;br /&gt;
&lt;br /&gt;
  private section.&lt;br /&gt;
    methods:&lt;br /&gt;
      set_and_get_text for testing&lt;br /&gt;
        raising cx_dynamic_check cx_static_check,&lt;br /&gt;
      fail_On_Buffer_Overflow for testing&lt;br /&gt;
        raising cx_dynamic_check cx_static_check.&lt;br /&gt;
&lt;br /&gt;
endclass.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
class tc_text_buffer implementation.&lt;br /&gt;
&lt;br /&gt;
  method fail_on_buffer_overflow.&lt;br /&gt;
    data(buffer) = new zcl_text_buffer( ).&lt;br /&gt;
    try.&lt;br /&gt;
      do 1000 times.&lt;br /&gt;
        buffer-&amp;gt;add_text( sy-abcde ).&lt;br /&gt;
      enddo.&lt;br /&gt;
      cl_Abap_unit_assert=&amp;gt;fail( &amp;#039;No Buffer Overflow&amp;#039; ).&lt;br /&gt;
    catch zcx_Buffer_Overflow ##no_Handler.&lt;br /&gt;
    endtry.&lt;br /&gt;
&lt;br /&gt;
  endmethod.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  method set_and_get_text.&lt;br /&gt;
    constants: c_hello_world type string value &amp;#039;Hello World&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
    data(buffer) = new zcl_text_buffer( ).&lt;br /&gt;
    buffer-&amp;gt;set_text( c_hello_world ).&lt;br /&gt;
&lt;br /&gt;
    cl_abap_unit_assert=&amp;gt;assert_equals(&lt;br /&gt;
      exporting act = buffer-&amp;gt;get_text( )&lt;br /&gt;
                exp = c_hello_world ).&lt;br /&gt;
&lt;br /&gt;
  endmethod.&lt;br /&gt;
&lt;br /&gt;
endclass.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Modultest]]&lt;br /&gt;
* [[Testautomatisierung]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=Stephan Kaleske&lt;br /&gt;
   |Titel=Query-Reporting mit SAP ERP&lt;br /&gt;
   |Verlag=Galileo-Press&lt;br /&gt;
   |Ort=Bonn&lt;br /&gt;
   |Datum=2009&lt;br /&gt;
   |ISBN=978-3-8362-1433-9&lt;br /&gt;
   |Kommentar=SAP PRESS}}&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=Damir Majer&lt;br /&gt;
   |Titel=Unit-Tests mit ABAP Unit&lt;br /&gt;
   |Verlag=dpunkt.verlag&lt;br /&gt;
   |Ort=Heidelberg&lt;br /&gt;
   |Datum=2009&lt;br /&gt;
   |ISBN=978-3-89864-539-3}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Testsoftware]]&lt;br /&gt;
[[Kategorie:SAP]]&lt;/div&gt;</summary>
		<author><name>imported&gt;TaxonBot</name></author>
	</entry>
</feed>