Testing. Modul Software Komponenten. Roland Gisler. Inhalt
|
|
- Fanny Grosse
- vor 5 Jahren
- Abrufe
Transkript
1 Modul Software Komponenten Testing Roland Gisler Inhalt 1. Testing Einführung 2. Motivation für Testing 3. Testarten, Unit-Testing 4. Test-First-Ansatz 5. Übungen 1 (Test-First Ansatz) 6. Messen der Codeabdeckung von Tests 7. Code Coverage (Grundlagen) 8. Übungen 2 (Code Coverage) 9. Weiterführende Möglichkeiten 10. Zusammenfassung und Quellen Modul SWK - (C) 2008 Roland Gisler 2
2 Testing Einführung Grundlagen zu Software-Testing Modul SWK - (C) 2008 Roland Gisler 3 Software Testing -Einführung Bei vielen EntwicklerInnen verpönt und unbeliebt. Warum? Ich kann programmieren, ich mache keine Fehler Ich will programmieren, nicht testen Ich muss den Termin einhalten, es muss schon fertig sein => Testen hat leider (und zu unrecht!) noch vielerorts ein schlechtes Image und ist 'uncool'... einerseits in einzelnen Köpfen (EntwicklerInnen) andererseits aber auch in der Firmenkultur Aber: Tests gewährleisten, dass speziell auch wichtige Software möglichst fehlerfrei arbeiten, so zum Beispiel: Modul SWK - (C) 2008 Roland Gisler 4
3 Software die (gut) getestet wird... steuert Software viele medizinische Geräte im Spital Herz-/Kreislaufmaschine, Beatmungsgerät, Infusion etc. Beispiel: Blutanalysegeräte von Roche kontrolliert und steuert verschiedenste Verkehrsmittel Luftraumüberwachung, Autopilot, Zugbeeinflussung, ABS, Airbag etc. Beispiele: Ariane, Kampfflugzeug steuert aufwändige und komplizierte Prozesse Beispiele: Chemische Industrie, Atomkraftwerke, Sicherheit Frage: Möchte jemand in diesen Bereichen auf das Testen verzichten und auf den 'genialen Programmierer' vertrauen? Modul SWK - (C) 2008 Roland Gisler 5 Problem: Typischer Abläufe in der Entwicklung Analyse, Design, Implementation, Testen... Auch wenn Iterativ gearbeitet wird, kommt das (grosse) Testen immer erst am Schluss Konsequenz: Man Testet um Fehler zu finden, die man eigentlich gar nicht machen, und somit auch nicht finden möchte! "Finde ich beim Testen einen Fehler, muss ich den ja auch noch korrigieren, und man glaubt ich habe schlecht gearbeitet." Berühmter Irrglaube und Rechtfertigung: "Wer keine Fehler findet, hat auch keine gemacht." Oder etwa nur einfach nicht getestet? Modul SWK - (C) 2008 Roland Gisler 6
4 Testing: Motivation Warum testen von Software Spass macht! Modul SWK - (C) 2008 Roland Gisler 7 Motivation für Testen Nicht: Wir testen nur um Fehler zu finden! Sondern: Wir testen kontinuierlich schon während der Implementation, um von Anfang an die Bestätigung zu haben dass es funktioniert! Fehler finden bevor man Sie gemacht hat! Fehler korrigieren bevor man Sie implementiert hat! Oder mindestens Fehler schon im Ansatz (wenn es noch niemand anders gemerkt hat) finden! Ansatz: Test-First! Modul SWK - (C) 2008 Roland Gisler 8
5 Testarten Verschiedene Arten von Tests Modul SWK - (C) 2008 Roland Gisler 9 Testarten - Überblick Integrationstests, (Teil-)Systemtest Unit- und Komponententest (Entwicklertest) Modul SWK - (C) 2008 Roland Gisler 10
6 Integrationstest / Systemtest Integration: Integration der Komponente / des Systems in die bestehende SW-Landschaft korrekte Interaktion, fehlerfreie Installation, Kompatibilität, Performance etc. => technische Sicht System: Testen eines gesamten (Teil-)Systems auf Basis der Spezifikation fachliche Korrektheit, Usability etc. => eher Benutzersicht Integrations- und Systemtests müssen explizit in einer Phase geplant, organisiert und durchgeführt werden (klassisches Testen) z.t. beträchtlicher Aufwand für Testumgebung: Bereitstellung und Konfiguration der Umsysteme, von Testdaten etc. Modul SWK - (C) 2008 Roland Gisler 11 Integrationstest / Systemtest: Nutzen Positiv: speziell in komplexen Systemen fundamental für eine erfolgreiche Inbetriebnahme/Einführung meist gut etabliert und akzeptiert interdisziplinäre Zusammenarbeit (Informatik mit Fach) Negativ: relativ grosser Aufwand Fehler werden erst spät aufgedeckt, somit Fehlerbehebung aufwändig und teuer Modul SWK - (C) 2008 Roland Gisler 12
7 Unit-Tests Häufig mit Komponenten-, Modul- und Entwicklertests gleich gesetzt funktionaler Test von einzelnen, in sich abgeschlossenen Units (Klasse, Komponente, Modul) Ziel: schnelle, einfach auszuführende, automatisierte Tests ohne Abhängigkeiten von Umsystemen werden während der Entwicklung ausgeführt innerhalb der Entwicklungsumgebung (IDE) innerhalb des Buildprozesses Unterstützung durch Frameworks (z.b. JUnit) Modul SWK - (C) 2008 Roland Gisler 13 Unit-Tests: Nutzen Positiv: neue oder veränderte Komponenten können schnell getestet werden Testen vollständig in die Implementationsphase integriert Test-First Ansatz möglich automatisiertes, übersichtliches Feedback / Reporting Integration von Coverage-Messungen möglich Negativ: für GUI(-Komponenten) schwieriger durchführbar Qualität und Nachvollziehbarkeit der Testfälle muss im Auge behalten werden (Qualität vor Quantität) Modul SWK - (C) 2008 Roland Gisler 14
8 Unit-Tests: Bilanz Nutzen unbestritten Qualität abhängig von einzelner/m EntwicklerIn Unterstützung durch Frameworks in nahezu jeder Sprache und Entwicklungsumgebung Aber: Hier wird meist zuerst gespart, was sich später sehr stark rächen kann. Modul SWK - (C) 2008 Roland Gisler 15 Test-First Test-First - Ansatz aus XP Modul SWK - (C) 2008 Roland Gisler 16
9 Test-First-Methode Entwickelt aus XP (extrem programming, u.a. von E. Gamma) Ganz einfacher Ansatz: Vor der Implementation immer zuerst die Testfälle schreiben! Vorteile: Während dem Schreiben der Testfälle denkt man unmittelbar auch an die konkrete Implementation des zu testenden Codes. Dabei 'reift' diese buchstäblich heran! Typisch fallen einem dabei viele Ausnahmen und Sonderfälle ein, welche man bei der Implementation der eigentlichen Komponenten dann 'automatisch' auch berücksichtigt. Kaum ist die Komponente fertig, kann Sie sofort getestet werden! Modul SWK - (C) 2008 Roland Gisler 17 Test-First-Methode sehr einfacher, aber genialer Ansatz! basiert technisch auf Unit-Tests arbeitet problemlos mit bewährten Unittest-Werkzeugen zusammen, ergo alle Vorteile von Unit-Tests Einziger 'Haken': Man muss es machen! Modul SWK - (C) 2008 Roland Gisler 18
10 Übungen Praktische Übungen zu SW-Testing nach Test-First Ansatz Modul SWK - (C) 2008 Roland Gisler 19 Code Coverage Messen der Codeabdeckung von Testfällen Modul SWK - (C) 2008 Roland Gisler 20
11 Messung der Codeabdeckung von Tests Problem: Wie kann man die Qualität von Unit-Tests beurteilen und verbessern? Ziel: Mit möglichst geringem Aufwand einen möglichst umfassenden Testfall implementieren => Effizienz! Lösung: Messen der Codeabdeckung von Testfällen während der Ausführung der Tests wird von der Laufzeitumgebung gemessen, welche Statements / Codezeilen tatsächlich abgearbeitet wurden! statistische Aufbereitung der Daten nach Testfall, Komponente, Package, Teilsystem etc. z.t auch historisiert, d.h. zeitliche Entwicklung der Werte Modul SWK - (C) 2008 Roland Gisler 21 Code Coverage -Demonstration Beispiele zur Messung der Codeabdeckung Variante 1: ANT-Build, Cobertura (open source) Variante 2: ANT-Build, Clover (Kommerziell) Modul SWK - (C) 2008 Roland Gisler 22
12 Code Coverage Grundlagen der Code Coverage Modul SWK - (C) 2008 Roland Gisler 23 Was ist Code Coverage? Code Coverage ist eine Metrik welche zur Laufzeit misst, welche Quellcodezeilen abgearbeitet wurden. Diese Messung wird typisch mittels Ausführung der Unit- Testfälle (z.b. mit JUnit) durchgeführt. Somit kann eine Aussage gemacht werden, wie umfassend der Code tatsächlich getestet wurde! Verbesserung der SW-Qualität durch besser Qualität der Testfälle Effizienzsteigerung der Testfälle Modul SWK - (C) 2008 Roland Gisler 24
13 Was wird gemessen? Man unterscheidet verschiedene Messtechniken Statement Coverage (Line Coverage) Decision Coverage (Branch Coverage) Path Coverage Function Coverage Race Coverage Unterschiedlich Aufwändig und Aussagekräftig Modul SWK - (C) 2008 Roland Gisler 25 Was wird gemessen? Statement Coverage Misst, ob und wie häufig eine einzelne Codezeile durchlaufen wurde. Problem: Handelt es sich bei der Zeile um einen logischen Vergleich, ist ein einmaliger Durchlauf nicht repräsentativ Decision Coverage Bei Fallunterscheidungen (if, while etc.) wird zusätzlich geprüft, dass beide Fälle (true und false) aufgetreten sind. Modul SWK - (C) 2008 Roland Gisler 26
14 Was wird gemessen? Path Coverage Bei der Path Coverage wird gemessen, ob alle möglichen Kombinationen von Programmablaufpfäden durchlaufen wurden. Problem: Die Anzahl der Möglichkeiten steigt exponential mit der Anzahl Entscheidungen Function Coverage Misst auf der Basis der Funktionen ob sie aufgerufen wurden Race Coverage Konzentriert sich auf Codestellen die parallel ablaufen. Modul SWK - (C) 2008 Roland Gisler 27 Was wird gemessen? Die meisten Code Coverage-Werkzeuge auf dem Markt unterstützen 'nur' Statement- und Decision-Coverage, teilweise noch Path Coverage. Dennoch liefern sie damit schon sehr wertvolle Aussagen, z.b.: Codeteile die beim Test schlicht vergessen wurden Ausnahmen, die nicht berücksichtigt wurden. Modul SWK - (C) 2008 Roland Gisler 28
15 Funktionsweise Instrumentierung des Quellcodes Der Quellcode wird durch einen Preprocessor vor dem Compilieren mit Statements zur Coverage-Messung ergänzt Instrumentierung des Bytecodes Der Bytecode wird bei der Compilierung (modifizierter Compiler), oder unmittelbar danach von einem Postprocessor mit Bytecode zur Coverage-Messung ergänzt. Modifizierte VM (im Falle von Java) Instrumentalisiert den Bytecode unmittelbar bei dessen Ausführung. Modul SWK - (C) 2008 Roland Gisler 29 Nachteile der Code Coverage Messung Instrumentierter Code ist langsamer nicht geeignet für zeitkritische Systeme Instrumentierter Code muss gesondert behandelt werden darf / sollte nicht in die produktive Distribution / Deployment gelangen Ausschliesslich für die Ausführung der Testfälle Modul SWK - (C) 2008 Roland Gisler 30
16 Auswertung / Integration Generierung von Reports (HTML) Bequem, wird von den meisten Produkten unterstützt. Kann problemlos automatisiert werden (Build-Process) Analyse mittels freistehender Anwendung Erweiterte Funktionalität, Verlinkung etc. Für interaktive Detailanalyse Integration in Entwicklungsumgebung Praktisch während der unmittelbaren Entwicklung von Testfällen. Modul SWK - (C) 2008 Roland Gisler 31 Herausforderungen Eine 100%-ige Abdeckung ist eine Illusion! Erreichbare Abdeckung stark abhängig von Projekttyp Automatisierbare Testfälle als Grundlage Exceptionhandlingist eine Herausforderung Realistische Werte liegen im Bereich von 40-70% Projektspezifisch festlegen Kann im Build-Prozess automatisch geprüft werden Modul SWK - (C) 2008 Roland Gisler 32
17 Übungen - Code Coverage Selber ausprobieren im Rahmen von Übung 2 Modul SWK - (C) 2008 Roland Gisler 33 Testen Weiterführende Möglichkeiten Modul SWK - (C) 2008 Roland Gisler 34
18 Testen - weitere Möglichkeiten - 1/3 Software-Metriken zur Identifikation von grossen Methoden, fetten Klassen, tiefen Vererbungen etc. komplexen, und somit fehleranfälligen Quellcodestellen Können in Testfälle eingebaut werden => Failure wenn Grenzwerte überschritten werden! Profiling / Performance und Memory Messen des Zeit- und Memorybedarfs einer Anwendung oder einzelner Komponenten Welche Methoden benötigen am meisten Laufzeit? Welche Algorithmen benötigen viel Memory? Wo sind evt. Memory-Leaks? Modul SWK - (C) 2008 Roland Gisler 35 Testen - weitere Möglichkeiten - 2/3 Mocking -Mock Objects erlauben die Simulation von ansonsten komplexen Umsystemen mittels Stubs Mock Objects an der Stelle der 'echten' Objekte enthalten minimale Logik um übergebene Parameter zu validieren und sinnvolle Testwerte/-daten zurückgeben zu können Unterstützung durch verschiedene Frameworks FitNesse -Testing Framework kombiniert mit Wiki und Collaboration Testdaten in Wiki dynamisch erfassen und erweitern Teilweise 'fachtauglich', sprich für fachliche TesterInnen Modul SWK - (C) 2008 Roland Gisler 36
19 Testen - weitere Möglichkeiten - 3/3 Continuous Builds und Continuous Integration ebenfalls aus dem XP-Ansatz entstanden Buildserver welche kontinuierlich das gesamte Projekt builden und Testfälle ausführen Builds bei Änderungen im SCM-Tool (cvs, svn etc.) regelmässige Builds (z.b. Nightly-Build) manuell ausgelöste Builds Aufbereitung detaillierter Statistiken und Metriken Durchführung von umfangreicheren Testfällen mehr Resourcen zur Verfügung und vieles anderes mehr... Modul SWK - (C) 2008 Roland Gisler 37 Zusammenfassung und Quellen Modul SWK - (C) 2008 Roland Gisler 38
20 Zusammenfassung Nicht nachträgliches Testen zur Fehlersuche, sondern kontinuierliches Testen zur Bestätigung dass es funktioniert! Test-First - Ansatz als sehr attraktive Methode aus dem XP- Ansatz Unterstützung durch zahlreiche Werkzeuge, Frameworks, Plugins etc. Vollständige Integration der Unit-Tests in die Implementationsphase des Projektes Messung der Code Coverage als Motivationsfaktor (Beispiel) Testen macht Spass! Modul SWK - (C) 2008 Roland Gisler 39 Quellen 1 JUnit Testframework, Coverage, Open Source (Beispiele): Cobertura, Emma, Coverage, kommerziell (Beispiele): Clover, JProbe, FitNesse TestingFramework undwiki, Modul SWK - (C) 2008 Roland Gisler 40
21 Quellen 2 Buildserver, Open Source (Beispiele): CruiseControl, Continuum, Buildserver, kommerziell (Beispiele): TeamCity, Mocking Frameworks, Open Source (Beispiele): EasyMock, MockRunner, jmock, Modul SWK - (C) 2008 Roland Gisler 41
CI was tut sich mit Jenkins in Sachen Test?
CI was tut sich mit Jenkins in Sachen Test? Ziel dieses Vortrags Sie sehen, dass CI mit Jenkins für alle Projektbeteiligte Nutzen stiftet Sie kennen den aktuellen Stand der Testautomation Statische Code-Analyse
MehrC++ OpenCppCoverage. Detlef Wilkening
http://www.wilkening-online.de Seite 1 / 52 C++ OpenCppCoverage Detlef Wilkening 10.11.2016 http://www.wilkening-online.de Seite 2 / 52 Warum überhaupt dieser Vortrag? Wir waren mal wieder in einer Gruppe
MehrTestgetriebene Entwicklung
Testgetriebene Entwicklung Arbeitskreis Objekttechnologie Norddeutschland Hamburg, 18.03.2002 Frank Westphal freier Berater, Hamburg Tammo Freese OFFIS, Oldenburg westphal@acm.org tammo.freese@offis.de
MehrWiederholung. Testen. Tests nach Methode zum Ableiten der Testfälle White Box Test Black Box Test
Testen Tests nach Lebenzykusphase Unit, Komponententests Integrationstets Systemtests Abnahmetests, Validierung Tests nach Testziel Lasttest Penetrationstests Funktionale Tests... Wiederholung Tests nach
MehrWiederholung Sortiert nach Lebenszyklusphase Sortiert nach Testziel Sortiert nach der Methode, um an Testfälle zu kommen
Testen Wiederholung Sortiert nach Lebenszyklusphase Sortiert nach Testziel Sortiert nach der Methode, um an Testfälle zu kommen JUnit Tests = Komponententests Stress Test White Box Test Integrationstests
MehrSystematisches Testen der Funktionalität von Softwaresystemen. 17. Juni 2015
Systematisches Testen der Funktionalität von Softwaresystemen 17. Juni 2015 Überblick Semantische Qualität von Software Teststrategien und prinzipien Testgetriebene Softwareentwicklung Welche Arten von
MehrFachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn. Testen. Tutorial im Rahmen des Software(technik)praktikums SS 2012
Testen Tutorial im Rahmen des Software(technik)praktikums SS 2012 Grundlagen (1) Software ist ein fundamentales Element in der Softwarequalitätssicherung Software wird am häufigsten eingesetzt Viele Organisationen
MehrWann lohnt sich GUI- Testautomatisierung?
Wann lohnt sich GUI- Testautomatisierung? Martin Moser, Gregor Schmid Quality First Software GmbH qfs@qfs.de Tel: +49 8171 919870 2006-2007 Quality First Software GmbH 26.02.2007 1 Überblick Hintergrund
MehrTool-Chain. Übung. Eclipse, SVN, Ant, Cobertura, Metrics Labor "Software Engineering Experiment" Sebastian Meyer und Kai Stapel
Tool-Chain Übung Eclipse, SVN, Ant, Cobertura, Metrics Labor "Software Engineering Experiment" 2009 Sebastian Meyer und Kai Stapel 05.05.2009 Überblick SVN Grundlagen SVN in Eclipse Ant in Eclipse Cobertura
MehrMathematik Seminar WS 2003: Simulation und Bildanalyse mit Java. Software-Architektur basierend auf dem Plug-in-Konzept
Mathematik Seminar WS 2003: Simulation und Bildanalyse mit Java Software-Architektur basierend auf dem Plug-in-Konzept Aufteilung: Probleme mit normaler/alter Software Ziele des Software Engineerings Die
MehrContinuous Integration mit VSTS Dieter Rüetschi
Continuous Integration mit VSTS Dieter Rüetschi (ruetschi@ability-solutions.ch) 1 2 Warum ist Continuous Delivery so wichtig? Geschwindigkeit schnell auf dem Markt Unterstützung und Teil des ALM 3 DevOps
MehrAbschlussbericht. Erstellung eines automatisierten Build-Prozesses für Eclipse-RCP- Anwendungen am Fallbeispiel Control System Studio.
Abschlussbericht Erstellung eines automatisierten Build-Prozesses für Eclipse-RCP- Anwendungen am Fallbeispiel Control System Studio Christian Weber Agenda Motivation (3-5) Vorgehen (6-7) Konzeptionelle
MehrProjekt Message-Logger
M o d u l S o f t w a r e k o m p o n e n t e n T A. S W K. F 1 0 0 1 Projekt Message-Logger T e s t p r o t o k o l l Horw, 06.06.2010 Projekt Dokument Schule Modul Projektteam Dozenten Letzte Änderung
MehrWelche Testautomatisierungen sind möglich und sinnvoll?
Continuous Testing Welche Testautomatisierungen sind möglich und sinnvoll? Frank Ziesel 11.05.2017 12. Neu-Ulmer Test-Engineering-Day 2017 Agenda Motivation Automatisierung in Software Projekten Continuous
MehrWann lohnt sich GUI- Testautomatisierung?
Wann lohnt sich GUI- Testautomatisierung? Martin Moser, Gregor Schmid Quality First Software GmbH qfs@qfs.de Tel: +49 8171 919870 2006-2007 Quality First Software GmbH 26.02.2007 1 Überblick Hintergrund
MehrEin Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren
Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren Hendrik Seffler HU Berlin Abschlussvortrag p. 1/25 Was? Entwicklung eines Werkzeugs zur Überdeckungsmessung für kontrollflussbezogene
MehrBlockpraktikum Multimediaprogrammierung
Blockpraktikum Multimediaprogrammierung 15. September 26. September 2008 Max Maurer Erfahrungsbericht Extreme Programming Kleiner Rückblick zur Vorlesung Prof. Heinrich Hußmann Agile Development for Multimedia
MehrMicro Focus Unit Testing Framework in Visual COBOL 3.0. Rolf Becking 29.August 2017
Micro Focus Unit Testing Framework in Visual COBOL 3.0 Rolf Becking 29.August 2017 Unser heutiges Webinar Wozu dient das Micro Focus Unit Testing Framework? Welches Konzept steckt dahinter? Wie wird ein
MehrRe-Engineering: Test-First-Ansatz. Dr. Thorsten Arendt Marburg, 17. Dezember 2015
Re-Engineering: Test-First-Ansatz Dr. Thorsten Arendt Marburg, 17. Dezember 2015 Re-Engineering Patterns [Demeyer et al.] 2 Software-Evolution WS 2015/2016 Überblick Probleme Wie ändert man Teile eines
MehrTesten von sicherheitskritischer Embedded Software mit frei verfügbaren Tools. - ein Erfahrungsbericht
Testen von sicherheitskritischer Embedded Software mit frei verfügbaren Tools - ein Erfahrungsbericht Martin Mühlemann CSA Engineering AG, CH-4500 Solothurn Ausgangslage Embedded-Firmware testen für ein
MehrVerbesserung des Entwicklungsprozesses durch testgetriebene Entwicklung und kontinuierliche Integration
Verbesserung des Entwicklungsprozesses durch testgetriebene Entwicklung und kontinuierliche Integration Stefan Rossbach Institut für Informatik Freie Universität Berlin 07.07.2011 Überblick Testen von
MehrQualitätsmanagement im Projekt
Software-Engineering Qualitätsmanagement im Projekt Vorlesung im Wintersemester 2008/2009 Fakultät Wirtschaftsinformatik Klaus Mairon, M.Sc. Inhalte Messen und Bewerten: Metriken in der Qualitätssicherung
MehrTesten von SOA-Anwendungen mit dem BPEL Testframework
Testen von SOA-Anwendungen mit dem BPEL Testframework Stefan Kühnlein IBM Deutschland Enterprise Application Solution GmbH Hollerithstr. 1 81829 München 0160/8848611 Stefan.Kuehnlein@de.ibm.com IBM Deutschland
MehrSoftware - Testung ETIS SS05
Software - Testung ETIS SS05 Gliederung Motivation Was ist gute Software? Vorurteile gegenüber Testen Testen (Guidelines + Prinzipien) Testarten Unit Tests Automatisierte Tests Anforderungen an Testframeworks
MehrHerzlich willkommen DevDay 2016 Performance Profiling mit JProfiler
Herzlich willkommen DevDay 2016 Performance Profiling mit JProfiler 1 2 Referent Björn Reber Software-Entwickler und Trainer Java-Technologie OpenSource und SAP 3 Inhalt Motivation Tool-Übersicht Profiling
MehrViele Entwickler finden Testen langweilig.
1 Viele Entwickler finden Testen langweilig. 2 Das galt auch für mich und meine Kollegen. 3 Programmierung kreativ Testen wiederholend, langweilig, eintönig 4 Programmierung konstruktiv, neuen Nutzen schaffen
MehrVom Testkonzept zu JUnit
Testen und Testkonzept Dipl.-Inf. (FH) Christopher Olbertz 2. Dezember 2014 Testen und Testkonzept Warum testen? Wichtig, obwohl bei Programmierern unbeliebt Stellt weitgehend korrekte Funktionsweise eines
MehrModellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH
Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen
MehrInhaltsverzeichnis. Geleitwort Einleitung... 13
5 Geleitwort..................................................... 11 Einleitung..................................................... 13 1 Einführung.......................................................
MehrDefinitionen/Vorarbeit zum Thema Java
Definitionen/Vorarbeit zum Thema Java Programmiersprachen: System von Wörtern und Symbolen, die zur Formulierung von Programmen für die elektronische Datenverarbeitung verwendet werden. Arten: z.b. Javascript
MehrTest-driven development JUnit-Test. Lars Varain
Test-driven development JUnit-Test Lars Varain Inhalt Test-driven Development (TDD) Junit4 Beispiel Inhalt Test-driven Development (TTD) Warum TDD? Zyklus Ausnahmebehandlung Junit4 Beispiel Inhalt Test-driven
MehrSoftware Engineering in der Praxis
Inhalt Nachlese Werkzeuge Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese Werkzeuge Josef Adersberger Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität
Mehr4 Grundlagen von SQS-TEST/Professional New Line
4 Grundlagen von SQS-TEST/Professional New Line 4.1 Einführung SQS-TEST/Professional New Line (NL) ist ein umfassendes und flexibles Werkzeug für den Test von Softwareanwendungen. Eine Anwendung (z.b.
MehrTest offener, dynamischer Systeme
Test offener, dynamischer Systeme Institut für Informatik Neuenheimer Feld 326 69120 Heidelberg http://www-swe.informatik.uni-heidelberg.de paech@informatik.uni-heidelberg.de RUPRECHT-KARLS-UNIVERSITÄT
MehrTesten mit Fit und Fitnesse. Ludger Solbach
Testen mit Fit und Fitnesse Ludger Solbach 22.09.2006 Agenda Agenda Einführung Teststufen, Testarten Probleme beim Testen Fit/Fitnesse Vorstellung Arbeitsweise Features Demo Fazit 09/22/06 SSE1 Ludger
MehrEcholot Qualitätssicherung mit Sonar
Echolot Qualitätssicherung mit Sonar Thomas Haug thomas.haug@mathema.de www.mathema.de Motivation Sonar Überblick Demo Fazit Motivation Sonar Überblick Demo Fazit Sometimes the developers manage to maintain
MehrMulti-Tool Testlandschaft mit DDS
Multi-Tool Testlandschaft mit DDS MATLAB UND SIMULINK ALS ENABLER FÜR RAPID TOOL PROTOTYPING SEBASTIAN BEWERSDORFF ASSYSTEM GERMANY MATLAB EXPO 2017 MÜNCHEN 27.06.2017 EINFÜHRUNG Tools in Unternehmensprozessen
MehrSoftwaretests. Werkzeuge zur Automatisierung. Thementag Wer testet, ist feige. Autor: für 24.06.2009. Markus Alvermann.
Softwaretests Werkzeuge zur Automatisierung für Thementag Wer testet, ist feige 24.06.2009 Autor: Markus Alvermann Seite 2 / 39 Agenda Motivation Versionsverwaltung Build-Tools Unit-Tests GUI-Tests Continuous
MehrOpen-Source-Werkzeugkasten für Software-QS. 05.05.2011 10:15-11:15 Uhr Zagrebsaal I
Open-Source-Werkzeugkasten für Software-QS 05.05.2011 10:15-11:15 Uhr Zagrebsaal I 1 Speaker Tobias Joch inovex GmbH Head of Solution Development leichtgewichtige und hochskalierende (Web-) Anwendungen
MehrSoftware Engineering in der Praxis
Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Strukturelles Testen 1 / 11 Strukturelles Testen Florin Pinte Marc Spisländer Lehrstuhl für Software Engineering
MehrStabile GUI-Tests durch modulare Testarchitektur. Martin Moser
Stabile GUI-Tests durch modulare Testarchitektur Martin Moser qfs@qfs.de +49 8174 386 48 0 Überblick Quality First Software GmbH Testziele GUI Testautomatisierung 2 / 21 Quality First Software GmbH Gegründet
MehrSoftware build (-erstellung), deployment(-verteilung) und execution(-ausführung)
Software build (-erstellung), deployment(-verteilung) und execution(-ausführung) (in eingebetteten Systemen) Inputvortrag Nebenläufige Systeme am 1.11.18 Georg Ringwelski Was machen Sie beim Entwickeln
MehrWer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.
Copyright 2010, MATHEMA Software GmbH 1 Wer bin ich > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.Net > Schwerpunkte Software
MehrSOA Continuous Integration
SOA Continuous Integration Jürgen Broda Continental Automotive GmbH Regensburg Martin Karmann und Daniel Kleine-Albers OPITZ CONSULTING München GmbH München Schlüsselworte SOA, CI, Continuous Integration,
MehrIT-Projekt-Management
IT-Projekt-Management email: vuongtheanh@netscape.net http: www.dr-vuong.de 2005 by, Bielefeld Seite 1 Testen 2005 by, Bielefeld Seite 2 IT-Projekte: Entwicklungsprozesse -1 - Planen Projektsteuerung,
MehrModel-based Design für medizintechnische Anwendungen
Model-based Design für medizintechnische Anwendungen Dr. Momme Winkelnkemper Projektumfeld Entwicklungsdienstleister Algorithmen Datenanalyse U.a. für Messgeräte- Entwicklung 2 Projektumfeld Entwicklungsdienstleister
MehrStatt Banaware Java GUI Testautomatisierung
Statt Banaware Java GUI Testautomatisierung Martin Moser Quality First Software GmbH qfs@qfs.de Tel: +49 8171 386480 Überblick Quality First Software GmbH Warum Testen? GUI Testautomatisierung Demo QF-Test
MehrDEVOPS AUS DER PERSPEKTIVE EINES
DEVOPS AUS DER PERSPEKTIVE EINES AGILEN TESTERS AGILE NIGHT VIENNA, 16.10.2018 STEFFEN SCHILD CLEAR GROUP 2018. All rights reserved Agenda DevOps was hat das mit Agilität zu tun wo ist der Test dabei?
MehrProgramm heute. Algorithmen und Datenstrukturen (für ET/IT) Fehlerarten. Validation. Wintersemester 2012/13. Dr. Tobias Lasser
Programm heute Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 01/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 1 Einführung Mathematische Grundlagen
MehrWas ist ein Profiler?
Profiling Was ist ein Profiler? (Theorie) Invasives Profiling Nichtinvasives Profiling Profiling in der Praxis gprof, gcov OProfile valgrind/callgrind Intel VTune Was ist ein Profiler? Analyse des Laufzeitverhaltens
MehrSpock und Geb: Übersichtliche und nachvollziehbare Tests! Ralf D. Müller, Freelancer Tobias Kraft, exensio GmbH
Spock und Geb: Übersichtliche und nachvollziehbare Tests! 08.03.2016 Ralf D. Müller, Freelancer Tobias Kraft, exensio GmbH Meine Software wird durch automatisierte Tests überprüft Keine Fehler, aber was
MehrTestgetriebene Entwicklung mit JUnit4
Testgetriebene Entwicklung mit JUnit4 Seminarvortrag im Fach Fortgeschrittenes Programmieren in Java, Dozent: Prof. Klinker Datum: 30.04.2010 Referent: Marius Schmeding Ausgangsfragen... Wie testet man
MehrAnforderungen gezielter umsetzen, Optimieren, Transparenz schaffen
Application Lifecycle Management in Eclipse Anforderungen gezielter umsetzen, Optimieren, Transparenz schaffen Christoph Bräuchle, MKS GmbH Interessen (klassisch) Budget: werden Aufwände eingehalten, ergeben
MehrModellbasiertes Testen mit UTP
Modellbasiertes Testen mit UTP Daniel Löffelholz 16. Dezember 2008 Einführung Motivation Grundlagen Modellbasiertes Testen Einordnung Vorgehen Technologien UML Testing Profile Beispiel Ausblick Anwendungsbeispiel
MehrJUnit (Version 4.x) Framework zur Unterstützung von Unit-Tests. Wir verwenden nicht JUnit 3.x. Ideen dahinter. Test-Methode
JUnit (Version 4.x) Framework zur Unterstützung von Unit-Tests Automatisierte Ausführung von Tests Wir verwenden nicht JUnit 3.x Erfordert anderes Programmierkonzept Ideen dahinter Testgetriebene Entwicklung:
MehrSo testen Sie Anappe.Com
M o d u l A P P E T A. A P P E. F 1 1 0 1 APPE Filialen-Bestellsystem T e s t p r o t o k o l l Horw, 03.06.2011 Projekt Dokument Schule Modul Projektteam Dozenten Letzte Änderung APPE Filialen-Bestellsystem
MehrTest First ist mehr als Unit Test Sinnvolle Teststrategien für agile Tests
Test First ist mehr als Unit Test Sinnvolle Teststrategien für agile Tests Dipl.-Math. Christian Alexander Graf Erlangen, den 24.09.2013 Übersicht Qualität ist eine Konstante Agile Ansätze Agile Testing
MehrPL/SQL Continuous Integration mittels Hudson Benjamin Jörger
PL/SQL Continuous Integration mittels Hudson Benjamin Jörger Strategische Beratung Prozesse DB Struktur Zukunftssicherheit Wartung& Support Wartung Aktualisierung Administration Support Oracle Lizenzmanagement
MehrAgile Apex - Life Cycle Management. Life Cycle Management für Apex Applikationen im agilen Projektumfeld
Life Cycle Management für Apex Applikationen im agilen Projektumfeld Targets the Rapid Application Development Community 2009 Oracle Corporation Agenda 1. Life Cycle Development Software Lebenszyklus Continuous
MehrProgrammierprojekt: So0ware Tests. Anne6e Bieniusa Sommersemester 2017
Programmierprojekt: So0ware Tests Anne6e Bieniusa Sommersemester 2017 Testen Kernfrage: Erfüllt die So0ware ihre Anforderungen / SpezifikaGon? FunkGonale Anforderungen Korrekte Ergebnisse bei Berechnungen
MehrGutes Benehmen Akzeptanztest-getriebene Software-Entwicklung in einem Web-Projekt
Gutes Benehmen Akzeptanztest-getriebene Software-Entwicklung in einem Web-Projekt 1 David Tanzer Bakk. Techn. (JKU Linz) Certified Scrum Master Freiberufler seit 2006 http://davidtanzer.net business@davidtanzer.net
Mehr1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.
1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Entwicklung von Services mit Oracle SOA Suite oder JEE Markus Lohn SOA/Integration Architect 2 Copyright 2011, Oracle and/or its affiliates.
MehrSoftwaretests Testgetriebene Entwicklung (TDD) vs wissenschaftliche Methode TDD Case Study Zusammenfassung
Antonia Bücklers Softwaretests Testgetriebene Entwicklung (TDD) vs wissenschaftliche Methode TDD Case Study Zusammenfassung - Antonia Bücklers 2 prüft und bewertet Software auf Erfüllung der spezifischen
MehrEinführung von XP in der Praxis
Einführung von XP in der Praxis Seminar Agile vs. klassische Methoden der Software- Entwicklung David Kocher, dk@cyberduck.ch Einführung XP bezeichnet sich als leichte Methode des Software Engieneerings
MehrAutomatisierte Akzeptanztests. Olaf Eschenbruch
Automatisierte Akzeptanztests Olaf Eschenbruch 10.04.2018 Motivation Wo stehen wir im Cynefin Framework Iterative Feedback Systeme Realm of unknown unknowns Agile Methoden Quelle: A Leader s Framework
Mehrswp12-6 Aufgabenblatt Qualita tssicherungskonzept
1 Dokumentationskonzept Interne Dokumentation 2 Dokumentation der Funktionen 2 Programmierstandards 2 Externe Dokumentation Dokumente 3 Was muss in jedem Dokument vorhanden sein? 3 2 Testkonzept Einleitung
Mehr20. Deutsche Anwenderkonferenz 2007 Software Entwicklung 2.0
20. Deutsche Anwenderkonferenz 2007 Software Entwicklung 2.0 Raus aus dem Chaos mit der kollaborativen Open Source- Entwicklungsumgebung. Nürnberg 21. November 2007 Robert Szilinski PROMATIS software GmbH
MehrReferat. Continuous Integration. mit Maven und Jenkins. Benjamin Keeser. Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master)
# Entwicklung verteilter Java Anwendungen # Referat Continuous Integration mit Maven und Jenkins Benjamin Keeser Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master) 2 Ablauf... Continuous
MehrContinuous Integration mit GitLab CI Christine Koppelt Open-Source-Treffen, 26. Januar 2018
Continuous Integration mit GitLab CI Christine Koppelt christine.koppelt@gmail.com Open-Source-Treffen, 26. Januar 2018 Continuous Integration Softwareentwicklung & Deployment Aufgaben eines Continuous
MehrModulare Testfälle spezifizieren zur Automation und manuellen Testdurchführung. Tanja M. Tremmel
Modulare Testfälle spezifizieren zur Automation und manuellen Testdurchführung Tanja M. Tremmel Ihre Herausforderung unsere Lösung Test-Projekt Management von der Ausschreibung bis zur Abnahme Standard
MehrGlücksspiel Softwareentwicklung. Christian Wende - DevBoost GmbH JUG Saxony Day 2016
Glücksspiel Softwareentwicklung Christian Wende - DevBoost GmbH JUG Saxony Day 2016 Eine einfache Aufgabe Implementiere einen Algorithmus, der eine gesuchte Zahl zwischen 1 und 1000 in maximal 10 Versuchen
MehrBest Practices für den Entwicklertest
Best Practices für den Entwicklertest Am 4. Juni 1996 wurde der Prototyp der Ariane- 5-Rakete der ESA eine Minute nach dem Start in vier Kilometern Höhe gesprengt, weil der Programmcode, der von der Ariane
MehrContinuous Integration in JBF. Johannes Kellner
Continuous Integration in JBF Johannes Kellner Ziel dieses Vortrags Betrachtung der Entwicklung des JBF Buildmanagements Nutzen und Aufwand für Continuous Integration einschätzen Betrachtung der genutzten
MehrJUnit. Software-Tests
JUnit Software-Tests Übersicht Einleitung JUnit Jia Li Grundlegendes Diana Howey Hendrik Kohrs Praktische Einbindung Benjamin Koch Zili Ye Einleitung in allgemeines Testen Automatische Tests Testen ist
MehrDie Einordnung des Automatiktests in den gesamten Komplex des Softwaretests und dessen Gebrauch im CTB-Projekt inklusive der aktuellen Problematik
/ 18 Seminarvortrag im Studiengang Scientific Programming von Martin Noy am 20.01.2012 Die Einordnung des Automatiktests in den gesamten Komplex des Softwaretests und dessen Gebrauch im CTB-Projekt inklusive
MehrSoftwaretests mit Junit
Softwaretests mit Junit Techniken der testgetriebenen Entwicklung Bearbeitet von Johannes Link überarbeitet 2005. Taschenbuch. XVI, 416 S. Paperback ISBN 978 3 89864 325 2 Format (B x L): 16,5 x 24 cm
MehrWann lohnt sich GUI- Testautomatisierung?
Wann lohnt sich GUI- Testautomatisierung?... und was Entwickler dafür tun können. Martin Moser Quality First Software GmbH qfs@qfs.de Tel: +49 8171 919870 Überblick Hintergrund Motivation ROI der GUI-Testautomatisierung
MehrSoftware Engineering II (IB) Testen von Software / Modultests
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 16.05.2017 21:17 Inhaltsverzeichnis Programm-Tests.................................. 2 Ziele des Testens..................................
MehrRadikaler Umbruch in der Fahrzeug- und Systemabsicherung. Steffen Kuhn
Radikaler Umbruch in der Fahrzeug- und Systemabsicherung Steffen Kuhn 21.04.2016 Autonomes Fahren ist das erklärte Ziel von Automobilherstellern, Zulieferern und Dienstleistern In Zukunft muss nicht nur
MehrSoftwareentwicklung in der industriellen Praxis
Softwareentwicklung in der industriellen Praxis Quellcodezentrierte Softwarequalität in Individual- Softwareprojekten TU-Dresden Dresden, 25. November 2013 Seite 2 Vorstellung Ralph Engelmann developer
MehrSOA Testing. Tobias Bosch OPITZ CONSULTING GmbH München
SOA Testing Tobias Bosch OPITZ CONSULTING GmbH München Schlüsselworte SOA, SOA Suite, OSB, Testing, Mock Einleitung SOA-Anwendungen sind verteilte Systeme und verwenden viele Schnittstellen, um zu kommunizieren:
MehrTest-Suite Beurteilung
Test-Suite Beurteilung Seminar: Beiträge zum Software Engineering @FU Berlin, Prof. Dr. Lutz Prechelt WS14/15 - Mehmet Bayram A Verglichene Arbeiten Comparing Non-adequate Test Suites using Coverage Criteria
MehrSoftware Engineering Projekt. Pflichtenheft
Software Engineering Projekt Pflichtenheft Ziele eines Pflichtenheftes Eine Festsetzung der Leistung und des Umfangs der Software Anforderungen Zugesicherter Funktionsumfang Zugesicherter Produktumgebung
MehrProgrammieren I. Übersicht. Vorlesung 12. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011
Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 2 Übersicht Testen ist eine der wichtigsten, aber auch eine der Zeitaufwändigsten Arbeitsschritte der Softwareentwicklung.
MehrCI - Dauerhaft integriert entwickelt es sich schneller
CI - Dauerhaft integriert entwickelt es sich schneller Sören Halter Oracle B.V. & Co. KG Dreieich Schlüsselworte Softwareentwicklung, Wasserfallmodell, Continuous Integration, Kontinuierliche Integration,
Mehr35 Jahre Verheiratet 2 Kinder beides Jungs Wohnort Berlin Seit 16 Jahren begeisterter Oracle Entwickler
35 Jahre Verheiratet 2 Kinder beides Jungs Wohnort Berlin Seit 16 Jahren begeisterter Oracle Entwickler Zwei geschäftsführende Gesellschafter, 6 Mitarbeiter Fokus: Oracle und Webentwicklung Planung, Durchführung
MehrSystematisches Testen
Systematisches Testen SEP 136 Unit Testing Objektorientierte Entwicklung Entwicklung von vielen unabhängigen Einheiten (Klassen, Methoden), aus denen das Gesamtprogramm zusammengesetzt wird. Ziel: Wenn
MehrAgile Java-Entwicklung in der Praxis
Agile Java-Entwicklung in der Praxis Michael Hüttermann O'REILLY* Beijing Cambridge Famham Köln Paris Sebastopol Taipei Tokyo Inhalt Prolog Einleitung XI XV Teil I: Die Methodik agiler Softwareentwicklung
MehrQualität von Software - Prof. Schlingloff, Lackner - SS2013 DYNAMISCHER TEST. Whitebox Testen mit JUnit
1 DYNAMISCHER TEST Whitebox Testen mit JUnit Übersicht 2 1. Grundlagen des Unittests 1. Units 2. Unit Testing 2. Testverfahren 1. Blackbox 2. Whitebox 3. Unit Testing mit Eclipse 4. Besprechung der Übungsaufgabe
MehrUnitTest mit dem SQL-Developer Testgetriebene Entwicklung mit Oracle Werkzeugen
Testgetriebene Entwicklung mit Oracle Werkzeugen Thomas Papendieck, Consultant OPITZ-CONSULTING Bad Homburg GmbH Vodafone D2 GmbH. Alfred-Herrhausen-Allee 1, 65760 Eschborn, 02.11.2010 OPITZ CONSULTING
MehrDiplomarbeit. 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
MehrProjekt Message-Logger
M o d u l S o f t w a r e k o m p o n e n t e n T A. S W K. F 1 0 0 1 Projekt Message-Logger T e s t p l a n Horw, 06.06.2010 Projekt Dokument Schule Modul Projektteam Dozenten Letzte Änderung Projekt
MehrDienstag, 24. September 13. Willkommen
Willkommen Ihr Wegbereiter für innovatives Systems-Engineering Consulting Engineering Training STAGES 2 ASQF Fachgruppe Projektmanagement Kompetenznetzwerk rund um Projektmanagement & Agilität Regelmäßige
MehrMaven 2 Softwareprojekte mit Kultur
Maven 2 Softwareprojekte mit Kultur Patrick Zeising 28.05.2010 Motivation Projekte unterscheiden sich stark im Aufbau Abläufe beim Übersetzen und Deployen unterscheiden sich stark
MehrQ-Event «Spice up your Test!»
Testautomatisierung in der agilen Software Entwicklung Q-Event «Spice up your Test!» Einsatz und Nutzen von Testautomatisierung in agilen Software Projekten Urs Müller Senior Testautomation Engineer Agenda
MehrSoftwaremetriken. 15. Mai 2013
Softwaremetriken 15. Mai 2013 Was sind Softwaremetriken? Softwaremetriken messen Qualität. besser: Softwaremetriken definieren, wie Kenngrößen der Software oder des Softwareentwicklungsprozesses gemessen
MehrMDRE die nächste Generation des Requirements Engineerings
MDRE die nächste Generation des Requirements Engineerings Tom Krauß, GEBIT Solutions GmbH Copyright 2007 GEBIT Solutions Agenda Requirements Engineering heute eine Bestandsaufnahme Modell-Driven Requirements
MehrDOAG Regionaltreffen. Regionalgruppe Nürnberg. Migration von Forms Client/Server ins Web. Andreas Ströbel OPITZ CONSULTING München
DOAG Regionaltreffen Regionalgruppe Nürnberg Migration von Forms Client/Server ins Web Andreas Ströbel OPITZ CONSULTING München Migration von Forms Client/Server ins Web Seite 1 Agenda Oracle Forms wie
Mehr