The Art of Unit Testing

Größe: px
Ab Seite anzeigen:

Download "The Art of Unit Testing"

Transkript

1 The Art of Unit Testing Marco Heimeshoff

2 Übersicht Grundlagen des Unit Testing Test Driven Development Stubs & Mocks Behavior Driven Design The Art of Unit Testing

3 Definition A unit test is a piece of a code (usually a method) that invokes another piece of code and checks the correctness of some assumptions afterward. If the assumptions turn out to be wrong, the unit test has failed. A unit is a method or function [Kent Beck] Frei übersetzt: Ein Unittest ist ein Stück Software, das ein anderes Stück Software (eine Methode) aufruft und Annahmen zu seiner Funktionalität prüft. The Art of Unit Testing Grundlagen

4 Unittest Ein guter Unittest sei: Automatisiert und wiederholbar Einfach zu Implementieren Zukunftssicher Von jedem lesbar und ausführbar Auf Knopfdruck ausführbar Schnell The Art of Unit Testing Grundlagen

5 Integrationstest Der Begriff Integrationstest bezeichnet in der Softwareentwicklung eine aufeinander abgestimmte Reihe von Einzeltests, die dazu dienen, verschiedene voneinander abhängige Komponenten eines komplexen Systems im Zusammenspiel miteinander zu testen. [Wikipedia] The Art of Unit Testing Grundlagen

6 Unittest vs. Integrationstest The Art of Unit Testing Grundlagen

7 Unittest vs. Integrationstest The Art of Unit Testing Grundlagen

8 Unittest Frameworks Unittests werden als Code mit den Bibliotheken eines Frameworks geschrieben, und mit einem seperaten Unittestingtool ausgeführt. The Art of Unit Testing Grundlagen

9 Unittest Frameworks Nunit MSTest ReSharper The Art of Unit Testing Grundlagen

10 Erste Schritte mit Unittest Testklasse und -methoden taggen [TestClass()] public partial class TestKlasse [TestInitialize()] public void MyTestInitialize() [TestCleanup()] public void MyTestCleanUp() [TestMethod()] [TestCategory("Daily")] public void MethodUnderTest_Scenario_ExpectedBehavior() Arrange, Act, Assert [TestMethod()] public void IsValidFileName_validFile_ReturnsTrue() { //arrange LogAnalyzer analyzer = new LogAnalyzer(); //act bool result = analyzer.isvalidlogfilename("whatever.slf"); //assert Assert.IsTrue(result, "filename should be valid!"); } The Art of Unit Testing Grundlagen

11 Erste Schritte mit Unittest Die Assert-Klasse hat statische Methode und liegt im Namespace Microsoft.VisualStudio.TestTools.UnitTesting. Sie dient zu Überprüfung von Annahmen. Assert Arrange, Act, Assert [TestMethod()] public void IsValidFileName_validFile_ReturnsTrue() { //arrange LogAnalyzer analyzer = new LogAnalyzer(); //act bool result = analyzer.isvalidlogfilename("whatever.slf"); //assert Assert.IsTrue(result, "filename should be valid!"); Assert.AreEqual(3, 3, "Zahlen stimmen nicht überein"); Assert.AreSame((int)3,(int)3, "Zahlen stimmen nicht überein"); Assert.IsNotNull(result, "Kein Ergebnis gefunden"); } The Art of Unit Testing Grundlagen

12 Test Driven Development Das Mantra der Testgetriebenen Entwicklung Red Green Refactor Einzelschritte Erstelle einen Test Compiliere ihn und stelle sicher, dass es fehlschlägt) Schreibe das Interface Compiliere erneut Starte den Test und stelle sicher, dass er rot wird Implementiere Programmcode Compiliere/Starte den Test und stelle sicher, dass er grün wird Refaktoriere deinen Code, um ihn wartbar und lesbar zu halten The Art of Unit Testing Test Driven Development

13 Test Driven Development Traditionell Test Driven The Art of Unit Testing Test Driven Development

14 Stubs & Mocks Ein Stub ist ein kontrollierbarer Ersatz für eine existierende Abhängigkeit im System. Durch benutzen eines Stubs kann man das System testen, ohne sich im die Abhängigkeit kümmern zu müssen [Roy Osherove] The Art of Unit Testing Stubs & Mocks

15 Stubs Zustandsbasierter Test The Art of Unit Testing Stubs & Mocks

16 Stubs Zustandsbasierter Test Wenn ein Stub benutzt wird, wird das Assert gegen die Klasse unter Test angewendet. Das Stub stellt sicher, dass der Test sauber abläuft. The Art of Unit Testing Stubs & Mocks

17 Mocks Ein Mockobjekt ist ein Fakeobjekt im System, das entscheidet ob ein Test erfolgreich ist, indem es die Interaktionen des zu testenden Objektes verifiziert. [Roy Osherove] The Art of Unit Testing Stubs & Mocks

18 Mocks Interaktionstest Die Klasse unter Test kommuniziert mit dem Mock, und alle Kommunikation wird im Mock gespeichert. Der Test benutzt das Mock, um zu verifizieren das der Test erfolgreich verlief. The Art of Unit Testing Stubs & Mocks

19 Mocks Interaktionstest public class MockService : IWebService { public string LastError; } public void LogError(string message) { LastError = message; } [TestMethod] public void Analyze_TooShortFileName_CallsWebService() { MockService mockservice = new MockService(); LogAnalyzer log = new LogAnalyzer(mockService); string tooshortfilename = "abc.ext"; log.analyze(tooshortfilename); Assert.AreEqual("Filename too short:abc.ext", mockservice.lasterror); } public class LogAnalyzer { private IWebService service } public LogAnalyzer(IWebService service) { this.service = service; } public void Analyze(string filename) { if (filename.length < 8) { service.logerror("filename too short:" + filename); } } The Art of Unit Testing Stubs & Mocks

20 Stubs & Mocks Isolationframeworks Ein Isolationsframework ist ein Satz programmierbarer APIs, der das Erstellen von Stubs und Mocks vereinfacht. Es erspart dem Programmierer repetetiven Code zu schreiben um Objektinteraktionen zu testen oder zu Simulieren. [Roy Osherove] The Art of Unit Testing Stubs & Mocks

21 Stubs & Mocks Isolationframeworks Verbreitung 2009 The Art of Unit Testing Stubs & Mocks

22 Stubs & Mocks Moq Ein relativ neues Framework Erfordert.Net 3.5 durch Einsatz von Lamdas Einfache Installation (Moq.dll als Referenz) Geringere Lernkurve Im Gegenzatz zu Rhino erlaubt es fake protected Methods The Art of Unit Testing Stubs & Mocks

23 Stubs & Mocks Moq var mock = new Mock<IFoo>(); mock.setup(foo => foo.dosomething("ping")).returns(true); // ref arguments var instance = new Bar(); // Only matches if the ref argument to the invocation is the same instance mock.setup(foo => foo.submit(ref instance)).returns(true); // Stub: start "tracking" sets/gets to this property mock.setupproperty(f => f.name); // Stub: alternatively, provide a default value for the stubbed property mock.setupproperty(f => f.name, "foo"); // Now you can do: IFoo foo = mock.object; // Initial value was stored Assert.Equal("foo", foo.name); // New value set which changes the initial value foo.name = "bar"; Assert.Equal("bar", foo.name); The Art of Unit Testing Stubs & Mocks

24 Behavior Driven Design Die Stützpfeiler guter Tests Vertrauenswürdigkeit Wartbarkeit Lesbarkeit The Art of Unit Testing Behavior Driven Design

25 Behavior Driven Design BDD ist eine agile Softwareentwicklungsstrategie, die das Zusammenspiel von Entwicklern, QA und nichttechnischen- oder Businesspartnern durch eine gemeinsame Sprache ermöglicht. The Art of Unit Testing Behavior Driven Design

26 Behavior Driven Design Scenario: Logging in with correct credentials Given a user with username "bdduser" and password "bddpassword" And is an active user in the system When a visitor logs in with username "bdduser" and password "bddpassword" Then the visitor is logged in as a "User" Scenario: Logging in with incorrect credentials Given no user exists with the username "bddbaduser" When a visitor logs in with username "bddbaduser" and password "bddbadpassword" Then the visitor is not logged in The Art of Unit Testing Behavior Driven Design

27 Behavior Driven Design The Art of Unit Testing Behavior Driven Design

28 Behavior Driven Design StoryQ The Art of Unit Testing Behavior Driven Design

29 Fazit Unittest erhöhen die Qualität und Akzeptanz Schnell durchführbar Isoliert Benötigen keine externe Konfiguration Geben ein konsistentes Pass/Fail Ergebnis über Features aus The Art of Unit Testing

30 Offene Fragen Inversion of Control bei Stubs Andere Mockframeworks Automatisierte Tests während des Builds Wie überzeuge ich mein Team Top Down or Bottom up / Champions&Blockers Wie teste ich Legacy Code The Art of Unit Testing

31 The Art of Unit Testing Vielen Dank

Test Driven Development

Test Driven Development Test Driven Development Definition & Motivation [~15min] Demo [~10min] Stubs & Mocks [~15min] Übliche Fehler [~5min] Folie 1 TDD [Kent Beck] Schreibe keine Zeile Code ohne einen fehlschlagenden (roten)

Mehr

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013 Software Komponenten FS13 Gruppe 03 Horw, 16.04.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Estermann Michael

Mehr

Fortgeschrittenes Programmieren mit Java. Test Driven Development

Fortgeschrittenes Programmieren mit Java. Test Driven Development Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test

Mehr

Testen mit JUnit. Motivation

Testen mit JUnit. Motivation Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH Automatisierte Akzeptanztests für ios-apps Sven Günther it-agile GmbH Wer entwickelt native Apps? Wer testet die Apps selbst? Wer hat externe Testdienstleister? Wer hat Unit-Tests? Wer hat Akzeptanztests?

Mehr

Einführung in die Informatik Tools

Einführung in die Informatik Tools Einführung in die Informatik Tools Werkzeuge zur Erstellung von Softwareprojekten Wolfram Burgard 8.1 Motivation Große Softwareprojekte werden schnell unübersichtlich. Änderungen im Code können leicht

Mehr

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung Projektmanagement Vorlesung von Thomas Patzelt 9. Vorlesung 1 Pläne Kein Plan überlebt die erste Feindberührung - Feldmarschall Helmuth von Moltke Prognosen sind schwierig, besonders wenn sie die Zukunft

Mehr

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen Alexander Schunk Henry Trobisch Inhalt 1. Vergleich der Unit-Tests... 2 2. Vergleich der Codeabdeckungs-Tests... 2 3. Vergleich

Mehr

Testen und Testautomatisierung in agilen Projekten

Testen und Testautomatisierung in agilen Projekten Testen und Testautomatisierung in agilen Projekten DR. WILHELM HUMMER [email protected] COPYRIGHT 2011, TECHTALK - WWW.TECHTALK.AT Wie es zu diesem Vortrag kam COPYRIGHT 2011, TECHTALK - WWW.TECHTALK.AT Testen

Mehr

Installation & Konfiguration AddOn AD-Password Changer

Installation & Konfiguration AddOn AD-Password Changer Installation & Konfiguration AddOn AD-Password Changer Selbständiges Vergeben des CRM-Passworts durch den User Version 1.0 Datum 26. März 2015 Inhalt 1. Ausgangslage... 2 2. Zielsetzung... 2 3. Nutzen...

Mehr

https://portal.microsoftonline.com

https://portal.microsoftonline.com Sie haben nun Office über Office365 bezogen. Ihr Account wird in Kürze in dem Office365 Portal angelegt. Anschließend können Sie, wie unten beschrieben, die Software beziehen. Congratulations, you have

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

DevOps bei den ID Build-Automatisierung statt Silo-Betrieb

DevOps bei den ID Build-Automatisierung statt Silo-Betrieb DevOps bei den ID Build-Automatisierung statt Silo-Betrieb SWS Entwicklertreffen vom 1.10.2015 Benno Luthiger 1.10.2015 1 Ausgangslage Kundenwunsch: Stabiles System, das schnell reagiert ( Betrieb) Neue

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Unit Testing mit JUnit. Dr. Andreas Schroeder

Unit Testing mit JUnit. Dr. Andreas Schroeder Unit Testing mit JUnit Dr. Andreas Schroeder Überblick Was dieses Video behandelt Warum Testen? Was sind Unit Tests? Der Teufelskreis des Nicht-Testens JUnit Unit Test Vorteile Test-Inspiration Wann aufhören?

Mehr

Das neue Volume-Flag S (Scannen erforderlich)

Das neue Volume-Flag S (Scannen erforderlich) NetWorker 7.4.2 - Allgemein Tip 2, Seite 1/5 Das neue Volume-Flag S (Scannen erforderlich) Nach der Wiederherstellung des Bootstraps ist es sehr wahrscheinlich, daß die in ihm enthaltenen Informationen

Mehr

07. November, Zürich-Oerlikon

07. November, Zürich-Oerlikon 07. November, Zürich-Oerlikon Automatisierte Spezifikationstests in agilen Projekten mit SpecFlow Christian Hassa (@chrishassa) Gaspar Nagy (@gasparnagy) TechTalk Software AG Willkommen! Scrum 2007 2008

Mehr

Mastermind. Testplan. Hochschule Luzern Technik & Architektur. Programmieren 2 FS12. Gruppe 10

Mastermind. Testplan. Hochschule Luzern Technik & Architektur. Programmieren 2 FS12. Gruppe 10 Testplan Programmieren 2 FS12 Gruppe 10 Redzepi Iljasa Reichmuth Marco Rey Philipp Rohrer Felix Eine interdisziplinäre Projektarbeit der Studiengänge Elektrotechnik und Informatik. Horw, 11.05.2012 Autoren

Mehr

SEMINAR Modifikation für die Nutzung des Community Builders

SEMINAR Modifikation für die Nutzung des Community Builders 20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen

Mehr

Integrierte und automatisierte GUI-Tests in Java

Integrierte und automatisierte GUI-Tests in Java Integrierte und automatisierte GUI-Tests in Java Gliederung Die Idee hinter GUI-Tests Herausforderungen und Probleme Techniken Jemmy-Framework Konzeptorientiertes Testen FIT (Framework for Integrated Tests)

Mehr

BIF/SWE - Übungsbeispiel

BIF/SWE - Übungsbeispiel BIF/SWE - Übungsbeispiel Arthur Zaczek Feb 2015 1 Allgemein 1.1 Ziele Ziele dieses Übungsbeispieles ist es: GUI: Implementierung einer grafischen Oberfläche mit JavaFX oder WPF UI-Komponente: Implementierung

Mehr

Unit Testing, SUnit & You

Unit Testing, SUnit & You HUMBOLDT-UNIVERSITÄT ZU BERLIN MENSCH-TECHNIK-INTERAKTION ARBEITSGRUPPE SOFTWARETECHNIK (INSTITUT FÜR INFORMATIK) ARBEITSGRUPPE INGENEURPSYCHOLOGIE (INSTITUT FÜR PSYCHOLOGIE) Unit Testing, SUnit & You

Mehr

Python SVN-Revision 12

Python SVN-Revision 12 Python SVN-Revision 12 Uwe Ziegenhagen 7. Januar 2012 Vorwort Dieses Skript erhebt keinen Anspruch auf Vollständigkeit oder Richtigkeit. Es wird geschrieben, um mir als Gedächtnisstütze für den Umgang

Mehr

Wie verbinde ich ein JBOD-System mit dem QStore QMX? - 1

Wie verbinde ich ein JBOD-System mit dem QStore QMX? - 1 Wie verbinde ich ein JBOD-System mit dem QStore QMX? In diesem Handbuch erläutern wir Ihnen, wie Sie ein JBOD-System an Ihr QStor QMX Gerät anschließen und das RAID Set über das RAID-Controller BIOS einstellen/verwalten

Mehr

Installation SQL- Server 2012 Single Node

Installation SQL- Server 2012 Single Node Installation SQL- Server 2012 Single Node Dies ist eine Installationsanleitung für den neuen SQL Server 2012. Es beschreibt eine Single Node Installation auf einem virtuellen Windows Server 2008 R2 mit

Mehr

Rock-Band. Einleitung. Scratch. In diesem Projekt lernst du, wie du deine eigenen Musikinstrumente programmieren kannst! Activity Checklist

Rock-Band. Einleitung. Scratch. In diesem Projekt lernst du, wie du deine eigenen Musikinstrumente programmieren kannst! Activity Checklist Scratch 1 Rock-Band All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Einleitung

Mehr

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

Diese Anleitung erläutert die Einrichtung des Active Directory Modus im DNS-343.

Diese Anleitung erläutert die Einrichtung des Active Directory Modus im DNS-343. Diese Anleitung erläutert die Einrichtung des Active Directory Modus im DNS-343. Benutzte Hardware: Router DGL-4100 mit der IP Adresse 192.168.0.1 Rechner mit Betriebssystem Windows Server 2000 und Active

Mehr

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen

Mehr

Mocha. Ein Ruby Mocking und Stubbing Framework. von Thilo Utke. Werd ich drüber reden Erst was zu mit.

Mocha. Ein Ruby Mocking und Stubbing Framework. von Thilo Utke. Werd ich drüber reden Erst was zu mit. Mocha Ein Ruby Mocking und Stubbing Framework von Thilo Utke Werd ich drüber reden Erst was zu mit. - 4 Jahre Software Entwicklung - 3 Jahre.Net - 1 Jahr Ruby/Rails - 1 Jahr Selbständig -

Mehr

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008 Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

So erstellen Sie nützliche Beschreibungen zu Ihren Tradingdaten

So erstellen Sie nützliche Beschreibungen zu Ihren Tradingdaten So erstellen Sie nützliche Beschreibungen zu Ihren Tradingdaten http://tradingtutorialautomation.de/wp-content/uploads/2015/04/so-erstellen-sienuetzliche-beschreibungen-zu-ihren-tradingdaten_20150406.mp3

Mehr

Unit-Test Theorie und Praxis. Stephan Seefeld, INGTES AG

Unit-Test Theorie und Praxis. Stephan Seefeld, INGTES AG Unit-Test Theorie und Praxis Stephan Seefeld, INGTES AG Inhalt Was sind Unit-Test? NUnit für.net Demo Seite 2 Quellen Für diesen Vortrag verwendete Quellen: dotnet User Group Berlin Brandenburg http://www.dotnet-berlinbrandenburg.de/

Mehr

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun Java Projekt Schiffe Versenken mit GUI 1. Über den Autor: Name: Marija Matejic Matrikelnummer: 9352571 E-mail: [email protected]

Mehr

.NET Code schützen. Projekt.NET. Version 1.0

.NET Code schützen. Projekt.NET. Version 1.0 .NET Code schützen Projekt.NET Informationsmaterial zum Schützen des.net Codes Version 1.0 Autor: Status: Ablage: Empfänger: Seiten: D. Hoyer 1 / 6 Verteiler : Dokument1 Seite 1 von 1 Änderungsprotokoll

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Iterativ. Inkrementell

Iterativ. Inkrementell Iterativ Inkrementell Build Release Test Qualität Architektur & Documentation Distributed Version Control Continuous Integration TDD Design Agile Architektur Dependency Feature Branches Mocks

Mehr

Softwareupdate-Anleitung // AC Porty L Netzteileinschub

Softwareupdate-Anleitung // AC Porty L Netzteileinschub 1 Softwareupdate-Anleitung // AC Porty L Netzteileinschub Softwareupdate-Anleitung // AC Porty L Netzteileinschub HENSEL-VISIT GmbH & Co. KG Robert-Bunsen-Str. 3 D-97076 Würzburg-Lengfeld GERMANY Tel./Phone:

Mehr

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager 7 combit Relationship Manager email-rückläufer Script Inhalt Einleitung 3 Notwendige Anpassungen 3 crm Solution

Mehr

Ein reales Testumfeld bereitstellen - basierend auf einer Produktionsdatenbank (ohne eine neue Kopie zu erstellen)

Ein reales Testumfeld bereitstellen - basierend auf einer Produktionsdatenbank (ohne eine neue Kopie zu erstellen) Ein reales Testumfeld bereitstellen - basierend auf einer Produktionsdatenbank (ohne eine neue Kopie zu erstellen) Auch in früheren Versionen als der 11.2, konnte man eine Standby Datenbank abhängen, sie

Mehr

ZuuL - Entwicklung eines Adventures

ZuuL - Entwicklung eines Adventures ZuuL - Entwicklung eines Adventures im Rahmen der Uni-Tage 2009 Team 120 Universität Hamburg 16./17. November 2009 Team 120 (Universität Hamburg) ZuuL - Entwicklung eines Adventures 16.11.09 1 / 21 Übersicht

Mehr

Prüfung Software Engineering II (IB)

Prüfung Software Engineering II (IB) Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 4 A Sommersemester 2015 Prüfung Software Engineering II (IB) Datum : 20.07.2015, 12:30 Uhr Bearbeitungszeit

Mehr

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine Seite 1 von 11 Anleitung Inhalt Inhalt... 1 1. Installation... 2 2. Setup... 2 2.1 Login... 2 2.2 Benutzer erstellen... 2 2.3 Projekt erstellen... 4 2.4 SVN/Git Integration... 6 2.4.1 Konfiguration für

Mehr

Digitaler*Ausstellungsbegleiter*für*Mobilgeräte ** * * * Alter: Studiengang: Geschlecht: $ $ $ $ Datum: Falls%Ja,%welches? Falls%ja, %welches?

Digitaler*Ausstellungsbegleiter*für*Mobilgeräte ** * * * Alter: Studiengang: Geschlecht: $ $ $ $ Datum: Falls%Ja,%welches? Falls%ja, %welches? Konzept(Evaluation Digitaler*Ausstellungsbegleiter*für*Mobilgeräte ** * * * * * * Wir$ bitten$ Dich$ während$ des$ Tests$ einige$ Angaben$ zu$ machen.$ Alle$ Daten$ werden$ selbstverständlich$ anonym$

Mehr

Verzahnung von Detailspezifikationen mit automatisierbaren Testfällen

Verzahnung von Detailspezifikationen mit automatisierbaren Testfällen Verzahnung von Detailspezifikationen mit automatisierbaren Testfällen DR. WILHELM FAUMA München, 14.03.2012 COPYRIGHT 2012, TECHTALK - WWW.TECHTALK.AT TechTalk auf einen Blick Agile Software Entwicklung

Mehr

Checkliste zur Planung einer Webseite

Checkliste zur Planung einer Webseite Checkliste zur Planung einer Webseite Eine neue Webseite ist immer ein spannendes Unterfangen. Egal, ob es Ihre erste oder zehnte Webseite ist. Das Gefühl, wenn die Webseite endlich fertig und live im

Mehr

MobiDM-App Handbuch für Windows Mobile

MobiDM-App Handbuch für Windows Mobile MobiDM-App Handbuch für Windows Mobile Dieses Handbuch beschreibt die Installation und Nutzung der MobiDM-App für Windows Mobile Version: x.x MobiDM-App Handbuch für Windows Mobile Seite 1 Inhalt 1. WILLKOMMEN

Mehr

Erster Bug: eine Motte

Erster Bug: eine Motte SOFTWAREFEHLER Der erste Bug Erster Bug: eine Motte Der Begriff Bug (deutsch: Motte) stammt aus dem Jahre 1945, als Ingenieure in einem Schaltrelais eines Computers (Harvard Mark II-System) eine Motte

Mehr

miditech 4merge 4-fach MIDI Merger mit :

miditech 4merge 4-fach MIDI Merger mit : miditech 4merge 4-fach MIDI Merger mit : 4 x MIDI Input Port, 4 LEDs für MIDI In Signale 1 x MIDI Output Port MIDI USB Port, auch für USB Power Adapter Power LED und LOGO LEDs Hochwertiges Aluminium Gehäuse

Mehr

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software Artologik EZ-Equip Plug-in für EZbooking version 3.2 Artologik EZbooking und EZ-Equip EZbooking, Ihre webbasierte Software zum Reservieren von Räumen und Objekten, kann nun durch die Ergänzung um ein oder

Mehr

Windows Server 2012 R2 Essentials & Hyper-V

Windows Server 2012 R2 Essentials & Hyper-V erklärt: Windows Server 2012 R2 Essentials & Hyper-V Windows Server 2012 R2 Essentials bietet gegenüber der Vorgängerversion die Möglichkeit, mit den Boardmitteln den Windows Server 2012 R2 Essentials

Mehr

QS solutions GmbH. präsentiert das Zusammenspiel von. Ihr Partner im Relationship Management

QS solutions GmbH. präsentiert das Zusammenspiel von. Ihr Partner im Relationship Management QS solutions GmbH präsentiert das Zusammenspiel von & Ihr Partner im Relationship Management Verbinden von Dynamics CRM mit Yammer Yammer ist ein internes soziales Netzwerk, das den Kollegen in Ihrer Organisation

Mehr

Test-Driven Developement Eine Einführung

Test-Driven Developement Eine Einführung Test-Driven Developement Eine Einführung 2007 by Tobias Hagen Im Rahmen der Veranstaltung Aktuelle Themen der Informatik bei Prof. Dr. Friedbert Kaspar Hochschule Furtwangen University Übersicht Einführung...

Mehr

WPF Steuerelemente Listbox, ComboBox, ListView,

WPF Steuerelemente Listbox, ComboBox, ListView, WPF Steuerelemente Listbox, ComboBox, ListView, Dr. Beatrice Amrhein Überblick Einführung Listen ComboBox Tabellen 2 Einführung 3 Listen- und Tabellen-Elemente Listen und Tabellen-Elemente sind Steuerelemente,

Mehr

Testen Prinzipien und Methoden

Testen Prinzipien und Methoden Testen Prinzipien und Methoden ALP 2 SS2002 4.7.2002 Natalie Ardet Definition Im folgenden gilt: Software = Programm + Daten + Dokumentation Motivation Software wird immer mehr in Bereichen eingesetzt,

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster

Mehr

License Management 1.0 - SDK

License Management 1.0 - SDK License Management 1.0 - SDK Inhalt Allgemeine Beschreibung... 2 Vorbereitungen... 2 Download aller nötigen Dateien und Dokumentationen... 2 Beantragung eines ValidationKeys... 2 Beantantragung einer Development-Lizenz...

Mehr

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: [email protected]

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: gi@uwe.doetzkies.de Agiles Design Dr.-Ing. Uwe Doetzkies Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: [email protected] startupcamp berlin 15.3.2013 Regionalgruppe Berlin/Brandenburg Arbeitskreis Freiberufler

Mehr

ECLIPSE PLUG-IN. Redwood Anwendertage 2015

ECLIPSE PLUG-IN. Redwood Anwendertage 2015 ECLIPSE PLUG-IN Redwood Anwendertage 2015 Übersicht Was ist Eclipse? Welche Voraussetzungen benötige ich? Wie wird das Plug-In installiert Welche Konfigurationen sind sinnvoll? Tipps & Tricks Was ist Eclipse

Mehr

Testen von graphischen Benutzeroberflächen. 26. Juni 2013

Testen von graphischen Benutzeroberflächen. 26. Juni 2013 Testen von graphischen Benutzeroberflächen 26. Juni 2013 Überblick Testarten Methoden-, Klassen-, Komponenten-, Systemtests Motivation für automatisches Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

WEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ

WEBINAR@LUNCHTIME THEMA: SAS STORED PROCESSES - SCHNELL GEZAUBERT HELENE SCHMITZ WEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ HERZLICH WILLKOMMEN BEI WEBINAR@LUNCHTIME Moderation Anne K. Bogner-Hamleh SAS Institute GmbH Education Consultant Training

Mehr

Partnerportal Installateure Registrierung

Partnerportal Installateure Registrierung Partnerportal Installateure Registrierung Ein Tochterunternehmen der Süwag Energie AG Allgemeine Hinweise Diese Anleitung zeigt Ihnen, wie Sie sich als Nutzer für das Partnerportal Installateure registrieren

Mehr

Gründe für fehlende Vorsorgemaßnahmen gegen Krankheit

Gründe für fehlende Vorsorgemaßnahmen gegen Krankheit Gründe für fehlende Vorsorgemaßnahmen gegen Krankheit politische Lage verlassen sich auf Familie persönliche, finanzielle Lage meinen, sich Vorsorge leisten zu können meinen, sie seien zu alt nicht mit

Mehr

EchoLink und Windows XP SP2

EchoLink und Windows XP SP2 EchoLink und Windows XP SP2 Hintergrund Für Computer auf denen Windows XP läuft, bietet Microsoft seit kurzem einen Update, in der Form des Service Pack 2 oder auch SP2 genannt, an. SP2 hat einige neue

Mehr

Erfahrungen mit Hartz IV- Empfängern

Erfahrungen mit Hartz IV- Empfängern Erfahrungen mit Hartz IV- Empfängern Ausgewählte Ergebnisse einer Befragung von Unternehmen aus den Branchen Gastronomie, Pflege und Handwerk Pressegespräch der Bundesagentur für Arbeit am 12. November

Mehr

Künstliches binäres Neuron

Künstliches binäres Neuron Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Programmiertechnik II

Programmiertechnik II Modultests Ziele Überprüfung der Korrektheit eines Moduls Korrektheit: Übereinstimmung mit (informaler) Spezifikation Modul: kleine testbare Einheit (Funktion, Klasse) Engl.: unit test White box testing

Mehr

Jeunesse Autopiloten

Jeunesse Autopiloten Anleitung für Jeunesse Partner! Wie Du Dir mit dem Stiforp-Power Tool Deinen eigenen Jeunesse Autopiloten erstellst! Vorwort: Mit dem Stiforp Power Tool, kannst Du Dir für nahezu jedes Business einen Autopiloten

Mehr

Design Patterns 2. Model-View-Controller in der Praxis

Design Patterns 2. Model-View-Controller in der Praxis Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden

Mehr

ISA 2004 - Einrichtung einer DFUE VErbindung - von Marc Grote

ISA 2004 - Einrichtung einer DFUE VErbindung - von Marc Grote Seite 1 von 10 ISA Server 2004 Einrichten einer DFÜ Verbindung - Von Marc Grote -------------------------------------------------------------------------------- Die Informationen in diesem Artikel beziehen

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren: 4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie

Mehr

Clients in einer Windows Domäne für WSUS konfigurieren

Clients in einer Windows Domäne für WSUS konfigurieren Verwaltungsdirektion Abteilung Informatikdienste Clients in einer Windows Domäne für WSUS konfigurieren 08.04.2009 10:48 Informatikdienste Tel. +41 (0)31 631 38 41 Version 1.0 Gesellschaftsstrasse 6 Fax

Mehr

Konzept zur Push Notification/GCM für das LP System (vormals BDS System)

Konzept zur Push Notification/GCM für das LP System (vormals BDS System) Konzept zur Push Notification/GCM für das LP System (vormals BDS System) Wir Push Autor: Michael Fritzsch Version: 1.0 Stand: 04. Februar 2015 Inhalt 1. Was ist eine Push Notification? 2. Wofür steht GCM?

Mehr

Andy s Hybrides Netzwerk

Andy s Hybrides Netzwerk Andy s Hybrides Netzwerk 1) Wireless LAN mit Airport... 1 2) Verbindung Mac-PC... 3 3) Verbindung PC-Mac... 6 4) Rendez-Vous mit dem PC... 8 1) Wireless LAN mit Airport Wer Wireless LAN benutzt, der sollte

Mehr

Vorstellung. Wie entsteht Architektur in Scrum

Vorstellung. Wie entsteht Architektur in Scrum Vorstellung Thema Architektur - Begriffsdefinition Eine Architektur (vοn griechisch αρχή = Anfang, Ursprung und lateinisch tectum = Haus, Dach) beschreibt in der Informatik im Allgemeinen das Zusammenspiel

Mehr

Test-Driven Design: Ein einfaches Beispiel

Test-Driven Design: Ein einfaches Beispiel Test-Driven Design: Ein einfaches Beispiel Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 2 Ziele Veranschaulichung der Technik des Test-Driven Design am Beispiel eines Programms

Mehr

Wärmebildkamera. Arbeitszeit: 15 Minuten

Wärmebildkamera. Arbeitszeit: 15 Minuten Wärmebildkamera Arbeitszeit: 15 Minuten Ob Menschen, Tiere oder Gegenstände: Sie alle senden unsichtbare Wärmestrahlen aus. Mit sogenannten Wärmebildkameras können diese sichtbar gemacht werden. Dadurch

Mehr

Whitepaper. Produkt: combit Relationship Manager, address manager. Lösungshinweise bei Setup Fehlermeldungen

Whitepaper. Produkt: combit Relationship Manager, address manager. Lösungshinweise bei Setup Fehlermeldungen combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager, address manager e bei Setup Fehlermeldungen e bei Setup Fehlermeldungen - 2 - Inhalt Einleitung 3 Fehlermeldung

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

WARENWIRT- SCHAFT UND ERP BERATUNG Mehr Sicherheit für Ihre Entscheidung

WARENWIRT- SCHAFT UND ERP BERATUNG Mehr Sicherheit für Ihre Entscheidung WARENWIRT- SCHAFT UND ERP BERATUNG Mehr Sicherheit für Ihre Entscheidung IT-SERVICE Warenwirtschaft (WaWi) und Enterprise Resource Planning (ERP) WaWi und ERP Beratung Kunden erfolgreich beraten und während

Mehr

Effizientes und effektives Testen von Embedded SW mit Google Test. Michael Bernhard

Effizientes und effektives Testen von Embedded SW mit Google Test. Michael Bernhard Effizientes und effektives Testen von Embedded SW mit Google Test Michael Bernhard 1 Agenda Warum testen? Wie testen? Google Test und Google Mock Toolintegration Schlussfolgerung 2 Die Norm fordert es

Mehr

Agile Softwareentwicklung

Agile Softwareentwicklung Agile Softwareentwicklung Werte, Konzepte und Methoden von Wolf-Gideon Bleek, Henning Wolf 2., aktualisierte und erweiterte Auflage Agile Softwareentwicklung Bleek / Wolf schnell und portofrei erhältlich

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

Mehr

Algorithms & Datastructures Midterm Test 1

Algorithms & Datastructures Midterm Test 1 Algorithms & Datastructures Midterm Test 1 Wolfgang Pausch Heiko Studt René Thiemann Tomas Vitvar

Mehr

Robert Hartmann Public v1.0 (Feb 2015) Architektur & Agilität - Praxisbericht

Robert Hartmann Public v1.0 (Feb 2015) Architektur & Agilität - Praxisbericht Robert Hartmann Public v1.0 (Feb 2015) Architektur & Agilität - Praxisbericht 1 Agenda Vorstellung Architektur & Agilität Industriedomäne Praxisbeispiele Wie geht es weiter? 2/26/2015 2 Vorstellung Robert

Mehr

Software Systems Engineering

Software Systems Engineering Software : SoSe 08 Prof. Dr. Klaus Schmid Software Produktlinien Ein neues Programm soll erstellt werden. Das habe ich doch schon mal programmiert, oder? Alter Code passt aber nicht ganz! Wird passend

Mehr

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld Sharing. Auf dem Bildschirm sollte folgendes Fenster erscheinen: Einleitung Unter MacOS X hat Apple die Freigabe standardmäßig auf den "Public" Ordner eines Benutzers beschränkt. Mit SharePoints wird diese Beschränkung beseitigt. SharePoints erlaubt auch die Kontrolle

Mehr

Programmieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.

Programmieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Ein Rechner Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Rechner sind überall Ihr Rechner

Mehr

Benutzerhandbuch - Elterliche Kontrolle

Benutzerhandbuch - Elterliche Kontrolle Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü

Mehr