Automatisierte Tests

Getting started ... Alles für einen gelungenen Start.
19 Beiträge • Seite 1 von 2 (current) Nächste
19 Beiträge Seite 1 von 2 (current) Nächste

Automatisierte Tests

Beitrag von ServantOfSonata (ForumUser / 40 / 12 / 0 ) »
Hallo Leute,

ich wollte mich mal erkundigen, inwiefern eure Erfahrungen mit dem Herstellen von automatisierten Unit-Tests reichen und nach ein paar Beispielen fragen.
Ich schau mir gerade eCatt an und die Möglichkeiten damit automatisierte Tests zu fahren.

Viele Grüße

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Automatisierte Tests

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Tja, was soll man da sagen? Meine Erfahrungen mit ABAP Unit Tests sind sehr, sehr gut. Ich sehe die folgenden Vorteile:

Die Unit Tests sind quasi die Beschreibung der Anforderung, so wie der Entwickler sie verstanden hat. Viele "Fehler" im Programm sind eigentlich keine Programmfehler, sondern falsch interpretierte Anforderung. Ein Fehler, der einmal gefunden wird, wird nie wieder versehentlich reinprogrammiert, weil er sich in einem Testfall manifestiert. So kann man keine zugesicherte Funktionalität "kaputtprogrammieren".

So wird das Programm immer besser. Wenn man nur "ausprobiert" (das ist das, was in SAP-Kreisen als "Testen" bezeichnet wird), dann testet man immer nur eingeschränkt und merkt unter Umständen gar nicht, dass man jemand anderem was kaputtmacht.

So hat man standardisierte Tests, die immer unter denselben Voraussetzungen dasselbe Ergebnis erzeugen müssen - und das per Tastendruck. Das Problem ist, dass die meisten Kunden die Entwicklung von Testklassen nicht bezahlen, weil sie meinen "wenn ich das starte und am Ende kommt der richtige Beleg raus, ist doch gut".... Damit hat man aber eben nur gezeigt, dass es unter EINER bestimmten Voraussetzung funktioniert, nicht unter 20, 30, 50 verschiedenen.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Automatisierte Tests

Beitrag von ServantOfSonata (ForumUser / 40 / 12 / 0 ) »
ABAP Unit ist in dem Fall definitiv eine Alternative. Nur bin ich bei den Anforderungen - zumindest in 1. Version - dabei, dass nicht unbedingt ein Entwickler die Tests schreiben soll, sondern möglicherweise weitere Testfälle durch den Anwender beschrieben und fixiert werden sollen. Das passt dann wiederum nicht so ganz, weshalb ich mich auch mit eCATT beschäftige. Hat jemand mit eCATT Erfahrungen ( oder auch du Ralf ). Obwohl du mit ABAP Unit natürlich Recht hast. :)

Re: Automatisierte Tests

Beitrag von a-dead-trousers (Top Expert / 4445 / 226 / 1196 ) »
Ich glaube du vermischt da was zwischen ABAP Unit und Testfälle:
ABAP Units werden (meistens) vom Entwickler selbst erstellt um kleine Code-Strecken auf techn. Korrektheit testen zu können. Diese Unit-Test können zwar auch auf vorgegebenen Testfällen basieren, betreffen aber wirklich nur kleine Happen im Code und sollten möglichst non-volatil (nicht "zerstörerisch"; keine Daten auf der Datenbank verändern) sein. Wie Ralf schon erwähnt hat, bildet der Entwickler hier seine Sicht der Dinge ab, wie er die Anforderung verstanden hat.
"Gewöhnliche" Testfälle im eCATT und anderen Test-Tools werden vom Anwender/Tester festgelegt und sollen ganze Arbeitsabläufe abbilden.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Automatisierte Tests

Beitrag von waltersen (Specialist / 151 / 0 / 14 ) »
Hallo,

automatisierte Unit Test sind generell sinnvoll (egal wo). Agile Methode (Scrum etc.) haben ein hohes Potential zum Scheitern, wenn man sowas da nicht macht.

Wir haben im Sommer einen Studenten, der ABAP Unit untersuchen soll.

@Ralf: Die Testfälle für eine Methode oder einen FuBa, Bapi werden programmiert (bei ABAP Unit)?

Zu eCATT: Damit habe ich auch ganz gute Erfahrungen gemacht, wenn es korrekt eingerichtet ist und man sich damit auskennt. Funktioniert nur mit SAP. Wenn Du dazu Fragen hast, gerne.

Zur Zeit Testen wir gerade HP UFT aus, dass funktioniert auch ganz gut, ist aber teuer und einarbeitungsintensiv. Dafür kann man es auch für nicht SAP Sachen (z.B. Browser) verwenden.

Gruß

Re: Automatisierte Tests

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
waltersen hat geschrieben:@Ralf: Die Testfälle für eine Methode oder einen FuBa, Bapi werden programmiert (bei ABAP Unit)?
Testfälle werden in der SE37 eingegeben. Willst du automatisiert testen, kannst du Testklassen schreiben.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Automatisierte Tests

Beitrag von Icke0801 (Specialist / 126 / 97 / 7 ) »
ralf.wenzel hat geschrieben: So hat man standardisierte Tests, die immer unter denselben Voraussetzungen dasselbe Ergebnis erzeugen müssen - und das per Tastendruck. Das Problem ist, dass die meisten Kunden die Entwicklung von Testklassen nicht bezahlen, weil sie meinen "wenn ich das starte und am Ende kommt der richtige Beleg raus, ist doch gut".... Damit hat man aber eben nur gezeigt, dass es unter EINER bestimmten Voraussetzung funktioniert, nicht unter 20, 30, 50 verschiedenen.
Mich würden ja mal Deine/Eure Argumentationen interessieren, um dem Kunden aufs richtige Gleis zu bringen.
Bisher bin ich gescheitert.
--
Grüße aus der Endlosschleife
-= Icke =-
abapTools

Re: Automatisierte Tests

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Stell dir vor, du arbeitest für die IT von Airbus. Das Produkt von Airbus sind Flugzeuge. Das Produkt der Airbus IT u. a. das SAP-System.

"Wenn ihr eure Flugzeuge so gewissenhaft testen würdet wie euer SAP-System - würdet ihr euch in SO einen Flieger setzen? Bei dem mal "ausprobiert" wurde, ob das Ding wirklich fliegt? Statt es systematisch durchzutesten?"

Geht auch mit BMW, VW, Benz, etc.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Automatisierte Tests

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Wieviele Leute sind denn in den letzten 30 Jahren bei einem SAP Absturz ums Leben gekommen?

Re: Automatisierte Tests

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Darum geht es doch gar nicht. Es geht darum, dass das SAP-System und das darin codierte Know How ungeheure Werte repräsentiert. Hast du eine Ahnung, was ein Produktivstillstand kostet?
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Automatisierte Tests

Beitrag von erp-bt (Specialist / 163 / 4 / 21 ) »
Icke0801 hat geschrieben: Mich würden ja mal Deine/Eure Argumentationen interessieren, um dem Kunden aufs richtige Gleis zu bringen.
Bisher bin ich gescheitert.
Das gleiche hier. Es interessiert niemanden, ob man dadurch langfristig sehr viel Geld sparen kann. Ein Verantwortlicher Abteilungsleiter der ein Programm in Auftrag gibt, möchte immer möglichst schnell und mit möglichst wenig Aufwand ein Ergebnis haben.
Wenn man so jemanden erklärt, das mit vielleicht dem doppelten Aufwand zu Beginn in ein vernünftiges Design und entsprechenden Unit-Tests sich langfristig die Aufwände in Wartung und Weiterentwicklung um ein Vielfaches reduzieren lassen, wird er sich in der Regel für die schnellere und günstigere Variante entscheiden. Den Interessiert das alles nicht. Der ist vielleicht in 2 Jahren schon nicht mehr da. Also warum mehr investieren?

Ein aktuelles Beispiel. Ich bin zur Zeit unter anderem für ein Bank-nahes Serviceunternehmen tätig. Man sollte meinen das gerade bei kritischen Anwendungen ein vernümftiges Design und eine abgesicherte Funktionalität durch Unit-Tests vorhanden sein sollte. Weit gefehlt! Die Folge? Sobald jemand mit einer Anforderung bzgl. einer Erweiterung oder einer neuen Funktionalität kommt, bricht die nackte Panik bei den Entwicklern aus. Es dauert Monate/Jahre bis ein neues Release produktiv zur Verfügung steht, weil sich keiner an die laufenden Sachen ran traut.
Natürlich wird da auch getestet, aber das läuft i.d.R. so das man einen neuen Entwicklungsstand in das QS-System transportiert und sich überraschen lässt was denn da so passiert. Wenn man Glück hat geht was schief (dann hat man nämlich noch die Chance korrigierend einzugreifen),und es geht wieder von vorne los im Entwicklungs-System. Das ist so ein langwieriger Prozess und jeder ist frustriert, angefangen von der Unternehmensführung, über die IT-Leitung, den Entwicklern, den Fachabteilungen und zu guter letzt den Kunden. Aber selbst hier ist es so, wenn man vorschlägt doch etwas mehr Hirnschmalz in das Design von neuen Entwicklungen zu stecken und das ganze mit Unit-Test abzusichern, bekommt man als Antwort das dauert zu lang und ist zu teuer. Was soll man da noch sagen?

Viele Grüße,

P.S.: Sorry an den Themenersteller für das Off-Topic.
...entwickelnder Berater...beratender Entwickler

Re: Automatisierte Tests

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
ralf.wenzel hat geschrieben:Darum geht es doch gar nicht. Es geht darum, dass das SAP-System und das darin codierte Know How ungeheure Werte repräsentiert. Hast du eine Ahnung, was ein Produktivstillstand kostet?
Worum ging es den in diesem Satz dann?
"Wenn ihr eure Flugzeuge so gewissenhaft testen würdet wie euer SAP-System - würdet ihr euch in SO einen Flieger setzen? Bei dem mal "ausprobiert" wurde, ob das Ding wirklich fliegt? Statt es systematisch durchzutesten?"
Dein Argument, "Hast du eine Ahnung, was ein Produktivstillstand kostet?" steht auf ganzen schwachen Beinen. Ich habe noch keinen Produktivstillstand miterlebt und habe schon in zig Firmen mit noch mehr Projekte hinter mir.

Und das was erp-bt erzaehlt, ist in den USA schon gehobener Standard. Ich habe im Internet mal gelesen, wie jemand ungefaehr schrieb: "Hier ist eine Software schon gut und kommt ins Produktivsystem, wenn es 70% erfuellt." Vielleicht finde ich die Seite noch einmal.

Getestet wird hier mit den Daten, die vom Program erwartet werden. Oft wird die Eingabe gar nicht geprueft, sondern es wird erwartet, dass der User genau weiss, was er eingeben muss und darf.
Ein! Testdurchgang mit Erfolg und das Programm laeuft und ist bereit fuer das Produktivsystem.

Schau Dir doch nur einmal US Internetseiten an. Jede zweite Seite ist unbrauchbar, Qualitaetsmaessig: Schrott. *Es gibt auch viele sehr gute Seiten, nicht dass da was falsch rueberkommt.
Krankenversicherung: Konnte ich nicht ueber die Internetseite abschliessen, ging nur telefonisch.
Autoversicherung: 6 Monate bis ich ueber die Internetseite meine Rechnung bezahlen konnte, anstatt einen Scheck einzuschicken.
Autovermieter Hertz: Keine Buchungen in Deutschland aus den USA moeglich. Ich kann gerne einen Teil meines 2woechigen Emailverkehr zur Verfuegung stellen.
Hier mal eine original Antwort, den ich kaum glauben konnte: "The link in which this form is sent is not tied to the Customer Service group. Therefore, it was not received."
Mit der Antwort hat man mir erklaert, dass jede Email, die man ueber die Hertzseite and Hertz schickte, ins Nirvana verschwand.
Und diese Antwort bekam ich, nachdem ich den CEO von Hertz persoenlich per Email angeschrieben habe.

Natuerlich finde ich so etwas nicht gut, ganz im Gegenteil. Aber ich habe das Gefuehl, dass es in Deutschland mit der Softwarequalitaet eher Anpassungen an das amerikanische System gibt, als andersrum.

Auch sorry fuer das Off-Topic.

Re: Automatisierte Tests

Beitrag von ewx (Top Expert / 4884 / 317 / 644 ) »
erp-bt hat geschrieben:Aber selbst hier ist es so, wenn man vorschlägt doch etwas mehr Hirnschmalz in das Design von neuen Entwicklungen zu stecken und das ganze mit Unit-Test abzusichern, bekommt man als Antwort das dauert zu lang und ist zu teuer. Was soll man da noch sagen?
Wahrscheinlich hat sich noch niemand im Detail darum gekümmert, was "das" eigentlich kosten würde.
Du brauchst im Grunde nur einmal auszurechnen/ zu schätzen, wie hoch die Kosten für die letzte Anpassung waren.
Dann musst du natürlich ein Konzept machen für die Erstellung von Unit-Tests und was dafür an Arbeit geleistet werden muss.
Wenn du richtig liegst, sind die Kosten für die Implementierung der Unit-Tests geringer.
Sollte es sich die Waage halten, dann zieht das buzz word "Risikominimierung" häufig ganz gut.

Und trotzdem ist meistens "das Hemd näher als die Hose", wie es so schön heißt. Das heißt, gemacht wird erst etwas, wenn etwas unbedingt und unaufschiebbar getan werden muss. Egal was es dann kostet.

Re: Automatisierte Tests

Beitrag von black_adept (Top Expert / 4131 / 130 / 955 ) »
Verantwortlicher( Implementierungsbudget ) <> Verantwortlicher( Wartungsbudget ) ==> Zur Designzeit werden keine Ausgaben für Tests vorgesehen.
Ist zumindest meine Erfahrung.
Vermutlicher Grund: Die Vorankommen des Implementierungsbudgetverantwortlichen ist vom Einhalten seines Budget abhängig und wird in keinster Art und Weise durch folgend anfallende Kosten beeinflusst.
Wozu so eine Entkopplung führt sieht man im Nicht-SAP-Umfeld doch gerade seit geraumer Zeit in den Nachrichten: Die Dieselaffäre von VW.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Automatisierte Tests

Beitrag von ServantOfSonata (ForumUser / 40 / 12 / 0 ) »
Als Themenersteller nehme ich die Entschuldigung zu dem Off Topic mal an ^^
(obwohl recht interessant ist was sich im Off Topic entwickelt hat)

Aber nichtsdestotrotz nochmal back to topic...

Ich wollte mal nach praxisnahen Beispielen von ABAP Unit fragen. Die bisherigen Beispiele die ich gefunden habe, gehen auf arithmetische Funktionen zurück.

Vergleichbare Themen

0
Antw.
1586
Views
Automatisierte Einrichtung Personalbereiche
von c oco » 20.04.2018 14:50 • Verfasst in Human Resources
0
Antw.
2062
Views
ABAP Unit Tests
von jocoder » 21.07.2017 15:25 • Verfasst in ABAP Objects®
9
Antw.
2430
Views
Sinn von Unit-Tests
von SaskuAc » 03.04.2019 13:33 • Verfasst in ABAP® für Anfänger
4
Antw.
635
Views
EHP 8 -- Unit-Tests in Funktionsgruppen
von ralf.wenzel » 16.08.2022 10:03 • Verfasst in ABAP® Core
7
Antw.
4638
Views
Report zum Ausführen von Unit-Tests
von ralf.wenzel » 08.01.2022 19:01 • Verfasst in ABAP Objects®

Aktuelle Forenbeiträge

BAPI_GOODSMVT_CREATE
vor 7 Stunden von waltersen 2 / 76
SAP GUI Installation Probleme
vor 3 Tagen von Romaniac gelöst 2 / 384
Erweiterung in ME51N/ME52N:
vor 6 Tagen von ABAPlerv 1 / 595

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

BAPI_GOODSMVT_CREATE
vor 7 Stunden von waltersen 2 / 76
SAP GUI Installation Probleme
vor 3 Tagen von Romaniac gelöst 2 / 384
Erweiterung in ME51N/ME52N:
vor 6 Tagen von ABAPlerv 1 / 595

Unbeantwortete Forenbeiträge

Erweiterung in ME51N/ME52N:
vor 6 Tagen von ABAPlerv 1 / 595
Erweiterung in ME51N/ME52N:
vor 6 Tagen von ABAPlerv 1 / 515