Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Adalheid Gembala Geändert vor über 10 Jahren
1
Testtechniken-Praktikum WS 2005/06 1 Performanztests mit JUnitPerf Andreas Höfer Dr. Matthias Müller
2
Testtechniken-Praktikum WS 2005/06 Andreas Höfer – Dr. Matthias Müller 2 JUnitPerf JUnit Erweiterung für Performanztests JUnit Erweiterung für Performanztests Geschrieben von Mike Clark Geschrieben von Mike Clark Kostenlos erhältlich: http://www.clarkware.com/software/ JUnitPerf.html Kostenlos erhältlich: http://www.clarkware.com/software/ JUnitPerf.html http://www.clarkware.com/software/ JUnitPerf.html http://www.clarkware.com/software/ JUnitPerf.html
3
Testtechniken-Praktikum WS 2005/06 Andreas Höfer – Dr. Matthias Müller 3 Test-Dekorierer (1/2) Tests mit Zeitlimit: TimedTest(Test test, long ms) Tests mit Zeitlimit: TimedTest(Test test, long ms) Option: waiting* – non-waiting Option: waiting* – non-waiting Lasttests mit mehreren Benutzern: LoadTest(Test test, int user, int iter, Timer timer) Lasttests mit mehreren Benutzern: LoadTest(Test test, int user, int iter, Timer timer) Option: atomic – non-atomic* Option: atomic – non-atomic* * Default
4
Testtechniken-Praktikum WS 2005/06 Andreas Höfer – Dr. Matthias Müller 4 Test-Dekorierer (2/2) Tests mehrfach ausführen geht mit JUnit (Packet junit.extensions ): RepeatedTest(Test test, int iter) Tests mehrfach ausführen geht mit JUnit (Packet junit.extensions ): RepeatedTest(Test test, int iter) TimedTest, LoadTest & RepeatedTest durch Dekorierermuster schachtelbar TimedTest, LoadTest & RepeatedTest durch Dekorierermuster schachtelbar
5
Testtechniken-Praktikum WS 2005/06 Andreas Höfer – Dr. Matthias Müller 5 Beispiel: Lasttest mit Zeitnahme public class AllPerformanceTests { public static Test suite() { Test test = new DBPerformanceTest( testSelect10KLines); Timer timer = new ConstantTimer(500); Test load = new LoadTest(test, 5, 10, timer); Test timed = new TimedTest(load, 5000); return timed; }}
6
Testtechniken-Praktikum WS 2005/06 Andreas Höfer – Dr. Matthias Müller 6 Einschränkungen von JUnitPerf Unmöglich, Zeit eines Testfalls alleine zu messen Unmöglich, Zeit eines Testfalls alleine zu messen Einbruch der Performanz bei LoadTest mit vielen Benutzern (JVM-abhängig) Einbruch der Performanz bei LoadTest mit vielen Benutzern (JVM-abhängig) Ersetzt Profiling-Tools nicht Ersetzt Profiling-Tools nicht Aber: Gute Richtschnur für Refactorings Aber: Gute Richtschnur für Refactorings :ATimedTest tearDown() Gemessene Zeit tearDelay() setUp()
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.