java-forum.org
JBoss Seam
Alter Preis: 39,95 €
Jetzt: 0,00 €

zzgl. Versandkosten

Zurück   java-forum.org > Enterprise Java > Application Tier

Application Tier EJB, Spring

Antwort    
Themen-Optionen Thema durchsuchen Ansicht
Alt 17.06.2009, 21:42   #1 (permalink)
Neuer Benutzer
Bit
 
Registriert seit: 23.03.2009
Beiträge: 6
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard Unit Test vs. Fassaden Tests.. Test der Business Logik

Ich hätte mal eine grundsätzliche Frage zu Business Tier tests. Ich stehe auf dem Standpunkt, dass man neben Unit Tests innerhalb von Systemen auch fachliche Tests insbesondere auf Schnittstellen, also Insbesondere auf den Fassaden durchführen sollte. Damit meine ich, dass die GP Schicht gekapselt mit einer (oder mehreren) Fassaden(hier dann wohl die Session Beans?!) an genau dieser Stelle mit Realitätsnahen, d.h. Usecase entsprechenden SW Tests penetriert werden sollten. Dabei gehe ich davon aus, dass man pro Usecas mindestens einen Test bauen sollte, der die Anwendung, zum Beispiel durch einen Client simmuliert.
Ich bin der Meinung das irgendwo in der standardliteratur so gelernt zu haben, bzw. ich war bis dato der festen Überzeugung, dass das der Richtige weg ist, die Funktionaltiät zu sichern.
Dagegen ist mein Kollege der Auffassung, dass mit Unit Tests schon genügend Sicherheit herrsche, man Fassaden ("grundsätzlich nicht") teste,("wo hast du das her...") und dass niemand Black box Tests machen soll, weil man damit den Fehler nicht finden würde.
Ich finde Unit tests ja auch vollkommen richtig. Kenn auch eigentlich auch den ganzen xp krams und meine, dass jede SessionBean ja eh getestet werden müsse...
Aber was bitte spricht gegen fachliche Tests auf Fassaden? Ist das nicht das selbe wie Tests auf der Sessiob Beans?
Insbesondere wenn die Usecase komplex sind..
Wie gesagt: meine Vision wäre mindestens ein Usecase pro Feature. Damit will ich Sicherstellen, dass Nebeneffekte nicht neu hinzuprogrammiert werden, die auf dem ersten Blick nicht ersichtlich sind.

Baut man "gewöhnlich" Unit Tests wirklich so sicher (und zwar nicht erst wenn ein fehler auftraucht und man ihn für immer durch einen Unit Test ausmerzen möchte...)
wie mein Kollege sagt? Reden wir an einander vorbei? wieso? Warum ist er so grundsätzlich gegen anständige Usecasebasierte Fassadenpenetration.
Oder macht es keinen Sinn wegen der EJB technologie so zu testen..
(Ich mein, die andere Seite, Mock und so ist mir klar..)
Fragen über Fragen

Wo in der Literatur sagt wer, was? Ich war mir eigentlich trotz verschiedener Ansätze sicher, dass Fassadentests weiterhin zum guten Ton sauber geplanter und gut strukturierter Informationssysteme gehören müssen.. das hab ich doch irgendwo gelesen... domschke holitschke siedersleben, oder sind beck und die xp fraktion wirklich grundsätzlich dagegen??

Ach ja. der Context: global genutztes logistiksystem mit mittelgrößen Datenmengen.
Auf Basis von EJB das gerade neu aufwächst. mit relativ komplexer Business Logik, und trotzdem viel CRUD.

Any geeks arround.?:
thx a lot.

Geändert von juniverse (17.06.2009 um 21:46 Uhr)
juniverse ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 00:38   #2 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Ebenius
 
Registriert seit: 18.11.2003
Beiträge: 4.904
Abgegebene Danke: 5
Erhielt 67 Danke für 65 Beiträge
In der SQA bin ich nicht so recht bewandert. Trotzdem bin ich mir sicher, dass Unit Tests nicht ausreichen können. Siehe V-Modell. Haste den Kollegen mal mit der englischen Wikipedia erschlagen? Software testing - Wikipedia, the free encyclopedia



Ebenius
__________________
The main rules of optimization
Rule 1: Don't do it.
Rule 2: (For experts only) Don't do it yet.
Ebenius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 09:12   #3 (permalink)
Java-Forum Team
Moderator
 
Registriert seit: 13.09.2007
Beiträge: 8.077
Abgegebene Danke: 3
Erhielt 67 Danke für 65 Beiträge
Kannst dir ja mal das "XUnit Test Pattern" durchlesen, gute info Quelle für Fragen über automatische Tests.

Dein Kollege hat unrecht, neben Unitests, also dem Test von isolierten komponeneten gibt es noch weitere Testarten, die als Integrationstests laufen.
Zu erwähnen wären da zB. das Cactus Framework.
Eine SessionBean kann übrigens eine Facade sein.

Zitat:
Siehe V-Modell.
Aua, warum denn gleich das Lemmingmodell aufführen wenn Agile Methoden eigentlich besser für Tests geeignet sind
maki ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 09:17   #4 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Ebenius
 
Registriert seit: 18.11.2003
Beiträge: 4.904
Abgegebene Danke: 5
Erhielt 67 Danke für 65 Beiträge
Zitat: maki
Beitrag anzeigen
Aua, warum denn gleich das Lemmingmodell aufführen wenn Agile Methoden eigentlich besser für Tests geeignet sind
Mir ging's nur darum, dass im V-Modell Integrations-Tests auf Unit-Tests folgen.

Ebenius
__________________
The main rules of optimization
Rule 1: Don't do it.
Rule 2: (For experts only) Don't do it yet.
Ebenius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 09:27   #5 (permalink)
Java-Forum Team
Moderator
 
Registriert seit: 13.09.2007
Beiträge: 8.077
Abgegebene Danke: 3
Erhielt 67 Danke für 65 Beiträge
Nix für ungut, hatte nur schlechte Erfahrungen was das V-Modell und V-Modell XT betrifft
maki ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 14:43   #6 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 23.03.2009
Beiträge: 6
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Danke schonmal soweit. Dass Session Beans die Fassade bilden war mir klar. Die Frage ist nur,
ob es Sinn macht, seine Buisiness Cases Außerhalb aufzusetzen, oder ob es tatsächlich besser organisiert ist das alles und ausschließlich White Box zu machen.
Ich meine dass die Trennung AppServer/ Client gerade danach schreit, von hier Tests sauber gegen die Fassade zu bauen,(zumal es auch mehrere Clients geben soll). Damit kämen die Test dann einer sauberen Komponentenspezifikation des AppS gleich.. Ist das jetzt schon extreme unProgramming , fat und lazy?
Bin ich jetzt altmodisch wenn ich finde, dass sauber definierte Interfaces sich vor allem durch die externe Testcase Erstellung aufsetzen lassen?
Oder sind Unit Test per se einfach sicher? Kriegt man damit sicher Seiteneffekte raus.. Insbesondere bzgl. Datenkonsistenz?... Das X Pattern kuck ich mir mal an.: ) thx.
juniverse ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 18.06.2009, 14:54   #7 (permalink)
Java-Forum Team
Moderator
 
Registriert seit: 13.09.2007
Beiträge: 8.077
Abgegebene Danke: 3
Erhielt 67 Danke für 65 Beiträge
Tests sollten soviel wie möglich gegen eine Blackbox testen, denn damit bleiben sie lose gekoppelt.
Manchmla braucht man eben die Whitebox (zB Mocks), aber da sollte man besonders aufpassen nicht zuviel Wissen über die interna zu prüfen, denn schliesslich können sich interna ändern.

Klar sind SessionBeans gut geeignet um Integrationstests zu schreiben, nur weil die Komponenten im Unittest funzen sagt dass ja noch nichts über das zusammenspiel aus.
IMHO sind aber SessionBeans immer noch zu technisch um rein fachliche Tests zu schreiben, dafür gibt es zB. FIT und Fitnesse.
maki ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort    

Lesezeichen

Latex Maths & Physics Editor ...

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Unit Tests im "Hauptprojekt" oder in Modulen WeirdAl Allgemeine Java-Themen 3 17.03.2008 09:55
Probleme mit JTabbedPane Michael1616 AWT, Swing & SWT 3 17.03.2008 00:17
mouse over scrolling problem Moni Für Verirrte - Fragen zu JavaScript 1 03.02.2008 00:23
prepared statement seven11 Java Basics - Anfänger Themen 10 24.10.2006 14:16
Unit Test und Test Dateien im Dateisystem kama Allgemeine Java-Themen 0 23.05.2006 13:51


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:02 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de