Testing using Mock Obejcts

Slides:



Advertisements
Ähnliche Präsentationen
Eine Website für den nationalen DaF-Verband gestalten Workshop Marco Aurelio Schaumloeffel IDV-Schriftleiter / University of the West Indies, Barbados.
Advertisements

M a r c – o l i v e r p a h l Informatik I – Kapitel 7 Klassen und höhere Datentypen Zusammenfassung des Kapitel 7 Küchlin, Weber, Einführung in die Informatik,
1 Gerardo Navarro Suarez BPM Suite. 2 Quelle: camunda Services GmbH Das Warum hinter Activiti Problem bestehender BPMS: Starker Fokus auf das Business.
Windows Server 2003 Managment Eric Hellmich
The difference between kein and nicht.
Fakultät für informatik informatik 12 technische universität dortmund Optimizations Peter Marwedel TU Dortmund Informatik 12 Germany 2009/01/17 Graphics:
Ruby on Rails im Überblick
Accusative- Spiel Oh ja!!!. Nominative der ein die 1______ das 2______ die (plural) 3______ Accusative 4______ 8______ 5______ eine 6______ 9______ 7______.
Write two sentences about each person based on the information given.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme ACM/IEEE Code der Ethik – Die ACM/ IEEE haben gemeinsam einen Code of Ethics erstellt.
ATHOS Benutzertreffen 2007
Seminar Web-Engineering Nina Aschenbrenner / Ruben Jubeh 1 FG Software Engineering Software Engineering Seminar Web Engineering Seminar des Fachgebiet.
WebCast: Managed Smart Tags mit VSTO Jens Häupel.NET Technologieberater Microsoft Deutschland GmbH
Typo3 Eine Einführung.
Divide and Conquer Eclipse RCP und Spring in verteilten Anwendungen Stefan Reichert | Lufthansa Systems Benjamin Pasero | IBM Rational.
05 Stammdaten Arbeitsgang. © beas group 2011 / Page 2 This documentation and training is provided to you by beas group AG. The documents are neither approved.
06 Stammdaten Artikel
Fighting the mud TESTING BROWNFIELD APPLICATIONS.
Akkusativ Präpositionen
Akkusativ Präpositionen
10 Survival Phrases Survival Answers 4/6 With Mr Angry Potato Head and Mrs. Mildly-Angry Carrot-Face.
Freitag, den Hausaufgabe für Montag den IA 10.3 and printout LB 10.3 A-B, D (Aufsatz!) GR 10.2 Guten Tag!
Sentence Structure. A basic sentence. Subject Subject + verb + the rest of the sentence.
Don`t make me think! A Common Sense Approach to Web Usability
Kapitel 4: Die Schule Deutsch 1
Tutorial im Rahmen des Software(technik)praktikums
You need to use your mouse to see this presentation © Heidi Behrens.
Stellen Sie sich vor: .....kurz vor der Einführung, ein neues Produktes / eine neue Software.....
Test Driven Development - Romano Adler-
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
Einführung in die Politikfeldanalyse 3.Vorlesung Prof. Herbert Gottweis Sommersemester 2006 Studienassistent: Homepage:
Jan Hentschel Microsoft Expert Student Partner Windows Azure Windows Azure Windows Azure Mobile Services.
Neno Loje Berater & MVP für Visual Studio ALM und TFS (ehemals VSTS) Hochqualitative Produkte mit Visual Studio & TFS 2010.
Windows Azure Websites Roland Krummenacher Senior Software Engineer, bbv Software Services
Frank Fischer + Bernhard Frank Microsoft Deutschland GmbH.
PresenterCompanyContact Windows Azure ASP.NET Web-Anwendungen schnell und zuverlässig bereitstellen.
XML IV: Cocoon 2.
DEUTSCHLAND UND DIE MEDIEN
DATIVE Ich schreibe meinem Bruder einen Brief.
Guten Tag! Montag den 1.10 Hausaufgabe für Dienstag den IA Software 3.1 & printout LB 3.1A,C-D GR Plurals.
Template v5 October 12, Copyright © Infor. All Rights Reserved.
Cyber-Security und Datenschutz in der Cloud Wie passt das zusammen?
Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Web Application Engineering & Content Management.
Einführung in das Wissenschaftliche Arbeiten Andreas Hechenblaickner Programmiersprache Eiffel
Past Perfect Tense.
Was dir Trivialbeispiele in Async and Await nicht sagen! Marcus Kimpenhaus und Martin Möllenbeck.
Jan-Cornelius Molnar Student Partner.
Softwaresponsoren Mediasponsoren. Vorstellung KnowledgeCenter Neue Sprachfeautres in VB 9.0 LINQ to SQL in der Praxis.
Windows Azure VMs und Storage
EPROG Tutorium #4 Philipp Effenberger
Negation is when you dont have or dont do something.
Wann muss man das? Vorbereitet von Prof. Engel-Doyle am 26. Januar 2010.
RateMe Slides.
RateMe Slides. Ablauf Präsentation des Konzepts (5-10 min) Demonstration der laufenden Software (5-10 min) Fazit der gesammelten Erkenntnisse.
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
ASP.NET MVC Stefan Lieser Web:
CAS ICT Modul Netzwerk Christoph Röthenmund
VO G6 H. Gottweis - SoSe 2oo8: (2) Was ist Policy Analyse? VO G6: Einführung in die Politikfeldanalyse 2. Stunde am 3. April 2008: Was ist Policy.
An Approach to the Preservation of Digital Records National Archives of Australia Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung.
Sprachneuerungen des .NET Frameworks 3.5
„Continuous Delivery“
THE DIRECT OBJECT (the accusative case).
Christian Binder Senior Platform Strategy Manager Microsoft Deutschland GmbH.
Wie heißt du? Ein Dialog Hallo!.
Fragen Wo wohnen Chris und Richard? Was bekommt Chris? Woher ist der Brief? Wer arbeitet in Zürich? Wo ist Zürich? Wann fährt ein Zug nach Zürich ab? Wo.
Test 1 Test 2 Test 3. Test 4 Test 5 Test 6 Test 7 Test 8 Test 9.
Accusative and Dative Cases
Der, die das pronouns Deutsch I kapitel 3-2.
Test.
DATIV Ich schreibe meinem Bruder einen Brief.
 Präsentation transkript:

Testing using Mock Obejcts Easymock 3.0 Richard Hauswald Senior Software Engineer Deutsche Software Engineering and Research GmbH

Road Map Theorie Praxis EasyMock Rezepte Fragen / Diskussion Das Problem Was ist ein Mock? Wann sollte man Mock Objekte verwenden? Praxis Mock Implementierung Anonymen Klassen EasyMock EasyMock Rezepte Fragen / Diskussion Weiterführende Links

Das Problem „Wie soll ich denn meinen Code Code testen ohne die ganze Datenbank hochzufahren???“ „Chef, das ist ein FTP Server bei dem jedes Byte Traffic teuer zu bezahlen ist. Dafür kann ich keinen automatisierten Test in die Suite aufnehmen“

Was ist ein Mock? Simuliert Verhalten Ermöglicht isoliertes Testen von Geschäftslogik Ermöglicht Abbildung von schwer bereitzustellenden Abhängigkeiten Hardware Schnittstellen z.B. Handhelds, Waschmaschinen, … Datenbankverbindungen Web Services, Ftp Server, …

Wann sollte man Mock Objekte verwenden? Indikatoren Langsames Laufzeitverhalten Schwierig zu erstellendes Objekt mit Abhängigkeiten auf spezielle Ressourcen Abhängigkeiten auf spezielle Laufzeitumgebungen Abhängigkeiten des Objekts machen einen isolierten Test unmöglich Nicht fertig implementierte Schnittstellen

Praxis

EasyMock Rezepte Mocken von Klassen ohne Interface Mit Exceptions arbeiten Einfache Argumentvergleiche Übersichtliche Asserts durch Captures

Fragen / Diskussion

Weiterführende Links EasyMock Homepage: http://easymock.org/ Eine kleine sehr einfache Einführung: http://tammofreese.de/2005/12/24/easymock-2-0/ Eine ausführliche Einführung: http://www.func.nl/community/knowledgebase/easymock-24-capturing-arguments-passed-mock-objects Ein eher allgemein gehaltener Artikel von Gabriel Schenker http://dotnetslackers.com/articles/designpatterns/To-mock-or-not-to-mock-that-is-the-question-Part-1.aspx