Testautomatisierung im Projektalltag
|
|
- Charlotte Geisler
- vor 8 Jahren
- Abrufe
Transkript
1 Testautomatisierung im Projektalltag 1
2 Agenda 1. Warum testen? 2. Grundlagen des Softwaretestens 3. Tools zur Unterstützung von Tests 4. Automatisiertes Testen - Erfahrungsbericht 2
3 : Erster Bug (Wikipedia) Eine Motte führt zum Ausfall eines Relais im Rechner Mark II. Frau Grace Murray Hopper notierte im Log-Buch:»First actual case of bug being found.offen«-sichtlicher Fehler! Lokalisierung und Beseitigung war einfach! [Spillner, HS Bremen, 2008] Logbuch-Seite des Mark II Aiken Relay Calculator mit dem ersten dokumentierten Bug (Wikipedia) 3
4 Fehler bei der Wiederverwendung von Software US Air Force, Programm zur Raketensteuerung Aus Speicherplatzmangel wurden beim Flug einer Rakete über den Äquator die Flugkoordinaten nicht neu berechnet, sondern nur das Vorzeichen geändert. Dadurch drehte sich die Rakete beim Überflug des Äquator zwar um die eigene Achse, was allerdings niemanden störte. Programm wurde unverändert in den Autopiloten des Jäger F-18 übernommen. Beim Überflug des Äquator drehte sich die Maschine auf den Kopf! [Spillner, HS Bremen, 2008] 4
5 Übersicht Fehlerhäufigkeiten in den USA Branche Anzahl Projekte Fellerrate [Fehler/KLOC] Mittlere Fehlerrate [Fehler/KLOC] Automatisierungstechnik 55 2,0-8,0 5,0 Finanzwirtschaft 30 3,0-10,0 6,0 Eingebettete Systeme 45 0,5-5,0 1,0 IT-Systeme (Datenbanken) 35 2,0-14,0 8,0 Entwicklungsumgebungen 75 5,0-12,0 8,0 Militär - gesamt 125 0,2-3,0 < 1,0 Militär - Luftfahrt 40 0,2-1,3 0,5 Militär - Boden 52 0,5-4,0 0,8 Militär - Raketentechnik 15 0,3-1,5 0,5 Militär - Raumfahrt 18 0,2-0,8 0,4 Wissenschaft 35 0,9-5,0 2,0 Telekommunikation (Switching) 50 3,0-12,0 6,0 Test 35 3,0-15,0 7,0 Trainer/Simulatoren 25 2,0-11,0 6,0 Webapplikationen 65 4,0-18,0 11,0 Sonstige 19 2,0-15,0 7,0 Quelle: Harry M. Sneed, Stefan Jungmayr: Mehr Testwirtschatlichkeit durch Value-Driven-Testing, Informatik Spektrum 34,
6 Und welche Anforderungen stellen unsere Kunden? Projekt mit 3 Releases Jedes Release ist in Produktion gegangen An jedem Release haben ca Entwickler ca. 1,5 Jahre gearbeitet Pro Release 3-5 Lieferungen an Kunden Späte Releases haben zum Teil funktionale Auswirkungen auf frühe Releases Kriterien Abnahmetest: Maximal 5 hohe Fehler durften gefunden werden vom Kunden! Maximal 15 mittlere Fehler durften gefunden werden vom Kunden! Ansonsten: Projektverzögerungen zu unseren Lasten Rahmenbedingungen eines meiner Projekte Inbetriebnahme nur ohne hohe Fehler und wenigen mittleren Fehlern Testen und Qualitätssicherung hilft diese Vorgaben zu erreichen. 6
7 Agenda 1. Warum testen? 2. Grundlagen des Softwaretestens 3. Tools zur Unterstützung von Tests 4. Automatisiertes Testen - Erfahrungsbericht 7
8 Zum Begriff des Testens Testen verfolgt mehrere Ziele: Identifizierung von Defekten Bestimmung der Qualität des Produkts Vertrauen in das Produkt erhöhen Analyse, um Fehlerwirkungen vorzubeugen Steigerung der Softwarequalität natürlich nur, wenn gefundene Fehler behoben werden ;) Aber: Test ist eine stichprobenartige Prüfung Fehlerfreiheit ist durch Testen nicht erreichbar Kein umfangreiches Softwaresystem ist fehlerfrei Test ist nur ein Bestandteil umfangreicher Qualitätsmaßnahmen 8
9 Konstruktives und analytisches Qualitätsmaßnahmen Konstruktive Maßnahmen Konstruktionstechniken und Richtlinien strukturiertes Vorgehen werkzeuggestützte Entwicklung höhere Programmiersprachen Vorgaben entstehen aus projektübergreifende Erfahrungen Planungsaktivitäten in frühen Phasen Einschränkung der Variabilität in der Systementwicklung, um gewisse Fehler nicht auftreten zu lassen und damit ein Maß an Qualität per se zu erreichen. Analytische QS Maßnahmen diagnostische Maßnahmen bringen keine Qualität per se Messung der Qualität der End- bzw. Zwischenprodukte Datenerhebung, um Ist- und Soll-Zustand zu vergleichen und so den Grad der erreichten Qualität im Nachhinein festzustellen. 9
10 Verfahren der konstruktiven Qualitätssicherung Konstruktive Qualitätssicherung Technische Maßnahmen Organisatorische Maßnahme Methoden Sprachen Werkzeuge Richtlinien Standards Checklisten Beispiel Methoden: Ziel: strukturierte Vorgehensweise Technik: Vorgabe von Zwischenprodukten Modelle Diagrammarten Beispiel Richtlinien: Ziel: Eigenschaften a priori festlegen Technik: Vorgabe von Richtlinien Checklisten, Schablonen Überprüfung Richtlinien 10
11 Verfahren der analytischen Qualitätssicherung Inspektion und Reviews Statische Prüfung (Dokument prüfen) Statische Codeanalyse Formale Verifikation Analytische Qualitätssicherung Symbolische Ausführung Tests Black-Box Äquivalenzklassen Grenzwertanalyse Zustandsbezogener Test Anweisungstest Dynamische Prüfung Dynamische Analyse White-Box Memory Leak Analyse Performancemessung Zweigtest 11
12 Testfallerstellung mit Äquivalenzklassen und Grenzwerten Äquivalenzklasse Sammlung von Ein/Ausgabewerten, für die ein System das gleiche Fehlerverhalten aufweist. Für die Testabdeckung muss nur ein Testfall aus der Äquivalenzklasse ausgeführt werden. Bei diesem Prinzip der Ableitung von Testfällen wird untersucht, welche Klassen von möglichen Eingabewerten zu einer ähnlichen Art der Verarbeitung führen. Mit Hilfe von Äquivalenzklassen kann man eine minimale Anzahl an Testfällen ermitteln, um die Anforderungen abzudecken. Grenzwertanalyse Die Grenzwertanalyse ist eine spezielle Form der Äquivalenzklassenanalyse. Die Werte, die sich auf und in der Umgebung der Grenzen der Äquivalenzklassen befinden, nennt man Grenzwerte. Methode wird oft zur Entwicklung von Stress oder Negativtests benutzt. 12
13 Beispiel für Äquivalenzklassen In der Spezifikation eines Online-Banking-Systems wird gefordert, dass nur Beträge von 0,01 bis 500 eingegeben werden dürfen. Für Tests sollte es daher ausreichen, drei Äquivalenzklassen zu bilden (eine gültige und zwei ungültige Äquivalenzklassen): Werte von 0,01 bis und mit 500,00 (gültig) Werte kleiner gleich null (ungültig) Werte größer als 500,00 (ungültig) Jede Überweisung im Online-Banking-System muss durch die Eingabe einer TAN autorisiert werden. Analog zur ersten Äquivalenzklasse können hier für die Eingabe der TAN vier Äquivalenzklassen gebildet werden: Eingabe einer korrekten TAN Eingabe einer falschen TAN Eingabe zu kurzer TAN Eingabe zu langer TAN Auf Basis der beiden Äquivalenzklassen werden die nachfolgenden Testfälle definiert: Gültiger Wert (z. B. 123,45 ) und korrekte TAN (ausgeführt, weil alles korrekt ist.) Gültiger Wert (z. B. 123,45 ) und falsche TAN (fehlgeschlagen, weil falsche TAN.) Ungültiger Wert (z. B. 600,00 ) und korrekte TAN (fehlgeschlagen, weil ungültiger Wert.) Gültiger Wert (z. B. 123,45 ) und zu kurze TAN (fehlgeschlagen, weil TAN zu kurz ist.) Gültiger Werts (z. B. 123,45 ) und zu lange TAN (fehlgeschlagen, weil TAN zu lang ist.) (/ 13
14 Beispiel für Grenzwerte Für die Prüfung der Grenzwerte werden nicht beliebige Werte getestet, sondern nur Randwerte oder Grenzwerte. Im Beispiel wären dies die Werte 0,00 (ungültige Eingabe) 0,01 (gültige Eingabe) 500,00 (gültige Eingabe) 500,01 (ungültige Eingabe) (/ 14
15 Softwarequalität umfasst mehr als nur die Beseitigung von Fehlern: Qualitätsmerkmale für Software Qualitätsziele Messbare Vorgaben für die verschiedenen Qualitätsmerkmale Funktionalität - Richtigkeit - Angemessenheit - Interoperabilität - Ordnungsmäßigkeit - Sicherheit Übertragbarkeit - Anpassbarkeit - Installierbarkeit - Konformität - Austauschbarkeit Zuverlässigkeit - Wiederherstellbarkeit - Fehlertoleranz - Reife ISO 9126 Benutzbarkeit - Verständlichkeit - Erlernbarkeit - Bedienbarkeit Änderbarkeit - Analysierbarkeit - Modifizierbarkeit - Stabilität - Prüfbarkeit Effizienz - Zeitverhalten - Verbrauchsverhalten Die Anforderungen an die Qualität hängen ab vom Anwendungsbereich der Software 15
16 Softwarequalität umfasst mehr als nur die Beseitigung von Fehlern Qualitätsmerkmale nach ISO 9126 (1/2) Funktionalität Umfasst Charakteristika, welche die geforderten Funktionalitäten des Systems beschreiben Oft durch Ein-/Ausgabeverhalten spezifiziert Mit Tests wird spezifiziertes Ein-/Ausgabeverhalten geprüft Teilmerkmale: Angemessenheit Richtigkeit Interoperabilität Ordnungsmäßigkeit Richtigkeit Zuverlässigkeit Fähigkeit eines Systems, sein Leistungsniveau unter festgelegten Bedingungen über einen definierten Zeitraum zu halten. Teilmerkmale: Reife Fehlertoleranz Wiederherstellbarkeit Benutzbarkeit Teilmerkmale: Verständlichkeit Erlernbarkeit Bedienbarkeit Wichtig für die Akzeptanz der Systeme Benutzbarkeit ist abhängig von Benutzergruppe Prüfung im Rahmen von nicht-funktionalen Tests 16
17 Softwarequalität umfasst mehr als nur die Beseitigung von Fehlern Qualitätsmerkmale nach ISO 9126 (2/2) Effizienz Teilmerkmale: Zeitverhalten Verbrauchverhalten Benötigte Zeit und Verbrauch an Betriebsmitteln für die Erfüllung einer Aufgabe Messbare Ergebnisse lassen sich mit Performancetest (nicht-funktionale Tests) ermitteln Änderbarkeit Wichtiges Kriterium, da Softwaresysteme oft über längeren Zeitraum eingesetzt werden. Änderbarkeit umfasst folgende Teilmerkmale: Analysierbarkeit Modifizierbarkeit Stabilität Prüfbarkeit Übertragbarkeit Übertragbarkeit umfasst folgende Teilmerkmale: Anpassbarkeit Installierbarkeit Konformität Austauschbarkeit Aspekte lassen sich häufig nur durch statische Analysen prüfen 17
18 Fundamentaler Testprozess (in Anlehnung an ISTQB) Allgemeine Softwareentwicklungsmodelle ordnen Test in Entwicklungsablauf ein und betrachten oft nur die Testdurchführung Fundamentaler Testprozess: Generischer Ablaufplan Anpassung an Gegebenheiten und Erfordernisse im Projekt notwendig. (Rollen und Dokumente sind nicht beschrieben.) Verfeinerter Ablaufplan für das Testen. Aufgaben im Prozess dürfen sich überschneiden und auch gleichzeitig durchgeführt werden. Beginn Planung und Analyse und Design Realisierung und Durchführung Auswertung und Bericht Abschluss Steuerung Ende Spillner, A., Linz, T.: Basiswissen Softwaretest - Aus- und Weiterbildung zum Certified Tester dpunkt, 4. Auflage 18
19 Testen im Softwarelebenszyklus Beispiel V-Modell Grundidee V-Modell Entwicklung und Test sind zueinander korrespondierende, gleichberechtigte Tätigkeiten. 19 Grundidee und daraus entstehende Prinzipien lassen sich auf andere Vorgehensmodelle übertragen.
20 Teststufen - Komponententest Komponententest soll die korrekte Funktionalität der einzelnen Systemkomponenten überprüfen. Schwerpunkt ist die isolierte Prüfung der einzelnen Komponenten. Komponententest wird meist durch den Entwickler durchgeführt vor der Integration Test der Komponenten 20
21 Teststufen - Integrationstest Integrationstest soll das fehlerfreie Zusammenwirken der Systemkomponenten überprüfen. Die einzeln getesteten Komponenten werden schrittweise integriert und das Zusammenwirken getestet. Schwerpunkt ist die Prüfung des Zusammenwirken der Komponenten. Dazu müssen die Schnittstellen in möglichst vielen Kombinationen ausgeführt werden. Test der Schnittstellen 21
22 Teststufen - Systemtest Systemtest ist der abschließende Test in einer realitätsnahen Umgebung (ohne den Auftraggeber), u.a. Funktionstest gegen die Spezifikation Massentest, Performancetest, Lasttest Usability Test Schwerpunkt der Prüfung ist das Verhalten des Gesamtsystems Test des Gesamtsystems 22
23 Teststufen - Abnahmetest Abnahmetest wird in der Einsatzumgebung des Auftraggebers mit realen Daten unter Mitwirkung des Auftraggebers durchgeführt Generierung und Installation des Systems Testfälle für reale Geschäftsvorfälle Zufällige Testfälle Prüfung Dokumentation Abnahmetest ist die Grundlage für die Abnahme durch den Auftraggeber. 23
24 Überblick Teststufen Komponententest Integrationstest Systemtest Abnahmetest Testbasis Komponentenspez. Systemdesign Schnittstellen- Dokumente auf Systemebene, Dokumente, die System aus Anforderungen übergreifende Spezifikation, Anwendersicht Softwaredesign Workflows, UCs Anforderungen... beschreiben Tester Entwickler Tester Tester Kunde Teststrategie White-Box Black-Box Black-Box Black-Box Testziele z.b. Funktionalität z.b. Schnittstellen- z.b. Erfüllt System die z.b. Vorgaben Vertrag Robustheit fehler Anforderungen Akzeptanz Effizienz Wechsel- (funktional vs. Nutzer u. wirkungen nicht-funktional) Systembetreiber 24 Komponententest und Integrationstest erfolgen nicht streng sequentiell Systemtest und Abnahmetest fallen typischerweise in die letzten Projektwochen
25 Frühes Testen ist wichtig für Projekterfolg Frühes Testen verringert die Projektrisiken Frühes Testen macht Entwicklung der Produktqualität transparent Implementierung Komponententest Stufenweise Integrationstest Systemtest Abnahmetest t Bereit zum Systemtest Bereit zur Abnahme 25
26 Grundsätze des Softwaretestens (nach ISTQB) 1. Testen zeigt die Anwesenheit von Fehlern. 2. Vollständiges Testen ist nicht möglich. 3. Mit dem Testen frühzeitig beginnen. 4. Häufung von Fehlern. 5. Zunehmende Testresistenz (Pesticide paradox). 6. Testen ist abhängig vom Umfeld. 7. Trugschluss: Keine Fehler bedeutet ein brauchbares System. Spillner, A., Linz, T.: Basiswissen Softwaretest - Aus- und Weiterbildung zum Certified Tester dpunkt, 4. Auflage 26
27 Agenda 1. Warum testen? 2. Grundlagen des Softwaretestens 3. Tools zur Unterstützung von Tests 4. Automatisiertes Testen - Erfahrungsbericht 27
28 Werkzeugtypen zur Unterstützung und Automatisierung von Tests (1/2) Werkzeuge für Management, Steuerung von Tests Erfassung, Verwaltung, Überwachung von Testfällen Verwaltung Problem-, Fehlermeldungen Verwaltung von Anforderungen (Requirements) Konfigurationsmanagement Werkzeuge zur Testspezifikation Verwaltung Vor-/Nachbedingungen von Testfällen Testdatengeneratoren (datenbankbasiert, spezifikationsbasiert, ) Werkzeuge für statische Tests Werkzeuge zur Reviewunterstützung Statische Analysen (z.b. zykomatische Anzahl) Model Checker 28
29 Werkzeugtypen zur Unterstützung und Automatisierung von Tests (2/2) Werkzeuge für dynamischen Tests Testtreiber, Testrahmen Simulatoren, Testroboter (z.b. Capture-and-Replay-Tools) Komparatoren Überdeckungsanalyse, Dynamische Analyse Werkzeuge für nicht-funktionale Tests Last-/Performancetests Monitore 29
30 Beispiel Testmanagement: HP Quality Center 30 HP ist führendes Tool im Kontext Testmanagement (Forrester Wave Studie) Browserbasiert Möglichkeit zur Automatisierung von Tests mit HP Quick Test
31 Werkzeuge für statische Tests Beispiele Checkstyle Prüfung von Coding Conventions in Java Projektkonfiguration notwendig Integration in Eclipse möglich FindBugs Durchsucht Java-Programmen nach Fehlermuster Fehlermuster deuten oft auf tatsächliche Fehler hin. Filterung bei größeren Projekten notwendig: Anzahl der angezeigten Warnungen sehr groß Sonograph for Java: Hinterlegung von Architekturmodellen für Projekt Identifikation von Architektur-oder Abhängigkeitsverletzungen Identifikation zyklischer Abhängigkeiten 31
32 Werkzeuge für die Testautomatisierung Beispiel JUnit Framework zum Testen von Java-Programmen Insbesondere zur Erstellung von Testtreibern für automatisierte Unit-Tests (Klassen oder Methode) Architekturüberblick aus JUnit A Cook's Tour 32
33 Einfacher JUnit-Testfall Test erben von Oberklasse TestCase public class StringTest extends TestCase { protected void setup( ) protected void teardown( ) Initialisierung des Testobjekts Zurücksetzen des Testobjekts nach Ausführung des Tests public void testsimpleadd() { String s1 = new String( abcd ); String s2 = new String( abcd ); Testobjekt wird geprüft mit assert-methoden von JUnit 33 } asserttrue( Strings not equal, s1.equals(s2)); } In Projekten wird Testframework aufgesetzt, das die Junit-TestCase-Klasse spezialisiert. Initialisierung der Datenbank, Komponenten, wird einheitlich für alle Tests gekapselt. Nur spezifische Initialisierungen in konkreten Tests enthalten.
34 JUnit: Integration in Eclipse 34
35 Vorteile, Nachteile JUnit Vorteile Einfache Erstellung von Testtreibern Tests können automatisiert werden Integration in IDEs Regelmäßig Durchführung der Tests möglich (nightly builds) Projektspezifische Anpassungen möglich Refactorings wirken sich auch auf Testtreiber aus Nachteile Keine Trennung von Testcode und Testdaten in Testtreibern Abhängige Komponenten müssen mit eingebunden werden in Test GUI-Tests nicht möglich 35
36 Werkzeuge für die Testautomatisierung Beispiel Selenium Testframework für Webanwendungen Aufzeichnung manuell durchgeführter Bedienschritte Bedienschritte werden als Testskript gespeichert. Beliebige Wiederholung der aufgezeichneten Skripte möglich Testskripte können als HTML-Tabellen abgelegt werden Selenium basiert rein auf HTML und JavaScript Selenium-IDE als Firefox-Addon verfügbar Capture-and-Replay-Tool 36
37 Vorteile, Nachteile Selenium Vorteile Einfache Erstellung von GUI- Testtreibern Gut geeignet für Regressionstests Vernünftiges Reporting durchgeführter Testfälle Generierung von Testskripten möglich Nachteile Keine Trennung von Testcode und Testdaten in Testtreibern Empfindlich ggü. Änderungen an GUI Kein Refactoring der Testfälle möglich Nachbearbeitung der Skripte notwendig Für langlebigen Einsatz ist angemessene Architektur notwendig (Modularisierung Testfälle, ) 37
38 Chancen und Risiken durch automatisiertes Testen Chancen Zeitdruck und Risiko vermindern sich in späten Projektphasen Kurzfristige Absicherung von Änderungen während des Produktivbetriebs Absicherung von Seiteneffekten Kostenersparnis Weniger stupider Test Risiken Zu wenig (Test-)Erfahrung im Team Ungeeignetes Werkzeug Sammlung von Testwerkzeugen passt nicht zusammen Testfälle sind nicht wartbar oder automatisierbar Pflegeaufwände für Testfälle ist hoch 38
39 Automating chaos gives faster chaos* Nicht als erstes über Werkzeuge zur Automatisierung der Testdurchführung nachdenken Nur wenn ein systematischer Testprozess definiert, eingeführt und gelebt wird, kann die Produktivität durch Tests zur Automatisierung erhöht werden. Reihenfolge zur Einführung von Werkzeugen 1. Fehlermanagement 2. Konfigurationsmanagement 3. Testplanung 4. Testdurchführung 5. Testspezifikation *Fewster, M., Graham, D.: Software Automation, Effective use of test execution tools 39
40 Abhängig von der Anzahl Wiederholungen der Testdurchführung lohnt sich eine Testautomatisierung Kosten Manuelle Tests Kosten Wartung TF Automatisierte Tests Kosten Implemen tierung TF Kosten Testspezifikation Anzahl Wiederholungen Testfälle Ab ca. 5 Wiederholungen lohnt sich eine Testautomatisierung Große Projekte laufen oft über mehrere Jahre mit mehreren Releases Früh über Testautomatisierung nachdenken 40
41 Agenda 1. Warum testen? 2. Grundlagen des Softwaretestens 3. Tools zur Unterstützung von Tests 4. Automatisiertes Testen - Erfahrungsbericht 41
42 Kernelemente des Testkonzepts in unserem Projekt Unittests auf Komponentenebene (Entwicklertests) Continuous Integration mit Nightly Builds und Reports Manuelle Integrationstests Testkonzept Erstellung von Testfallspezifikationen Zentrale Bereitstellung von Testdaten Automatisierte Integrationstests 42
43 Entwicklertests und Continuous Integration Entwicklertests Manuelle Entwicklertests (für Dialoge) JUnit-Tests Entwickler durfte erst einchecken, wenn die automatisierten Tests der Komponente lokal erfolgreich waren Vorgaben über Art und Umfang der Tests Refactoring der JUnit-Tests hat gut funktioniert Continuous Integration Einsatz von Hudson Sobald Entwickler eingecheckt hat, wurde Anwendung neu gebaut und getestet (auf Komponentenebene mit Junit) Reports wurden bereitgestellt und per Mail versandt an Verantwortliche Nightly-Build Nighly-Build wurde täglich ausgeführt Bauen und Deployen der Anwendung für manuelle Integrationstests am nächsten Tag Ausführung der automatisierten Entwicklertests und Integrationstests Historisierung der Reports über mehrere Wochen (Zur Identifikation eines Fehler, musste nachgestellt werden können, wann Fehler aufgetreten ist) 43
44 Testfallspezifikation: Testziele werden zu Testfällen gruppiert Ableiten von Testzielen/Testkriterien aus Spezifikation Gruppierung zu logischen Testfällen [Capgemini] 44
45 Verwendung der Testfallspezifikationen Konkrete Regeln/Vorgehensweisen zur Ableitung von Testzielen aus Spezifikationen Regeln sollen Testabdeckung sicherstellen Regeln stellen sicher, dass alle Themen ähnlich detailliert geprüft werden Beispiele: Vorbelegungen sind zu prüfen Vor-/Nachbedingungen sind zu prüfen Einfache Validierung (Zeichenanzahl, Umlaute, Datum, usw.) sind nicht explizit zu prüfen. Regeln haben sich sehr stark an gegebenen Strukturen der Spezifikation ausgerichtet Vergabe von Teststrategien auf Ebene der Testfallspezifikation Einfaches Dialogverhalten wurde manuell getestet, nicht wiederholt getestet Pflichtfelder Korrekte Generierung von Dokumenten Verhalten aus Anwendungsfällen wurde automatisiert getestet Vor-/Nachbedingungen Externe Schnittstellen. Entscheidung über Testwerkzeug (Proven! Oder JUnit) Testfallspezifikationen wurden einem Review unterzogen Frühe Qualitätssicherung darüber, was getestet werden soll Prüfung auf Vollständigkeit Testfallspezifikationen wurden dem Kunden übergeben Abgleich mit Testideen des Kunden war insbesondere auf der Ebene der Testziele möglich 45
46 Vorgehen automatisierte Dialogtests Testfallbeschreibung Testausführung Testergebnis Beschreibung basiert auf einer einfachen Sprache in HTML- Tabellen Organisation im Dateisystem Versionierung ist möglich Automatische Ausführung der Testfälle, dabei Anbinden verschiedener Testschnittstellen Verknüpfte Testfälle erlauben Wiederverwendung von Testsequenzen Report von Testergebnissen in der Testfallspezifikation Einfache und leicht verständliche Ergebnispräsentation im Ampel-Stil [Capgemini] 46
47 Proven! setzt keyword-basiertes Testen um Tool bei Capgemini entwickelt Schlüsselworte mit optionalen Parametern Für Schlüsselwörter ist im Testtreiber eine Implementierung hinterlegt, die vordefinierte Aktionen auslöst Testautomatisierer erstellt Tabellen, in denen die Schlüsselworte mit ihren Testdaten zu Testszenarien zusammengestellt sind Während automatisierter Testausführung liest Testframework Testfalltabellen ein und führt die dazugehörigen Operationen aus und protokolliert die Durchführung Vorteil: Testautomatisierer kann ohne Kenntnis der Testautomatisierungsdetails durch Kombination der Schlüsselwörter Testfälle erstellen Nachteil: Sprache ist nicht so leistungsfähig wie z.b. JUnit [Capgemini] 47
48 Regeln zur Implementierung von automatisierten Tests Problem im Projekt Proven!-Testfälle nicht robust gegen Änderungen der Anwendung Proven!-Testfälle nicht robust gegen Änderungen der Testdaten Hohe Kosten bei Anpassung der Testfälle Identifikation von Antipattern bei der Implementierung von Testfällen SQL-Antipattern Teilweise wurden in den Testfällen SQL-Anweisungen abgesetzt Bei einer Anpassung des Datenmodells funktionierten die Testfälle nicht mehr Falsche Annahmen bezüglich der Konstanz der Testdaten Teilweise wurden Ergebnismengen als statisch angenommen Bei einer Änderung der Testdaten können sich Ergebnismengen ändern, nur Konsistenz der Kerndaten konnte sichergestellt werden Programmierung in den Testfällen Programmierung mit den Hausmitteln der Testframeworks ist fehleranfällig und nicht wartbar Einsatz von fachlichen Konnektoren, die aus dem Skript heraus aufgerufen werden schafft Abhilfe 48
49 Erfahrung mit automatisierten Dialogtests Automatisierung von Dialogtests ist sinnvoll in einem Projekt über mehrere Jahre Vollautomatisierung ist nicht wirtschaftlich Aufwand zur Erstellung der automatisierten Tests ist sehr hoch Wartungsaufwand von automatisierten Testfällen kann hoch werden Abhängig von den Projektbedingungen muss geprüft werden, was wie oft getestet werden muss Modularisierung bei Dialogtests Modularisierung bei Dialogtests verschlechtert die Lesbarkeit Frameworks für die Unterstützung von Dialogtests erlauben einfache Implementierung von Testfällen Vorgaben für Implementierung sind unbedingt notwendig, da sonst Wartung nicht möglich ist Automatisierte Dialogtestfälle werden oft naiv implementiert Testfälle sind anfällig gegenüber Änderungen der Anwendung und den Testdaten Frameworks für die Unterstützung von Dialogtests unterstützen Refactoring nur unzureichend/gar nicht Kontinuierliche Überwachung und Wartung der Testfälle ist notwendig Anwendung darf den Testfällen nicht davon laufen 49
50 Vorgehen automatisierte Dialogtests Erstbefüllung Test-DB-Skripte Test-DB für Tests DB Skripte zur Ausführung von Anwendungsfällen Test- DB Befüllung über Schnittstellen zu Inputsytemen Initiale Daten von Kunden geliefert Skripte nutzen Testframework Skripte führen Anwendung aus Nach Ausführung der Skripte stehen Testdaten zur Verfügung Testdaten für Integrations und Entwicklertests Ziel: Zentrale Bereitstellung von konsistenten, korrekten Testdaten Gründe für Vorgehen Erstellung von konsistenten Testdaten erfordert detailliertes fachliches Wissen Einzelne Einzelne Testfallentwickler oftmals überfordert mit Erstellung Testdaten Anwendung und damit die Testdaten ändern sich Erstellung Testdaten muss wiederholbar sein Aufwand bei einzelnen Personen für die Erstellung von Testdaten reduziert sich. 50 Nicht alle Testdaten für alle Testfälle hinterlegen! Zentraler Testdatenpool Testdaten werden in Testfällen (über Anwendung) angepasst
51 Fazit: Testautomatisierung Testautomatisierung erlaubt gleichbleibend hohe Qualität über mehrere Releases Testautomatisierung sollte mit Beginn der Entwicklung hochgezogen werden Automatisiertes Testen erfordert strukturiertes Vorgehen Genau überlegen, was automatisiert getestet wird Testfälle müssen sorgfältig automatisiert werden Migrationsdaten sollten für den Test so früh wie möglich zur Verfügung stehen Testfälle müssen aktuell sein ansonsten bekommen Entwickler kein Feedback Tester und Entwickler sollten sich persönlich kennen Häufige Spezifikationsänderungen führen zu hohen Aufwänden bei automatisierten Tests Qualität zwischen einzelnen Testphasen messen/prüfen Gute Traceability zwischen Analysewelt und Test ist sehr hilfreich Neben funktionalen Tests auch früh genug mit nichtfunktionalen Tests beginnen 51
52 Literatur A. Spillner, T Linz: Basiswissen Softwaretest: Aus- und Weiterbildung zum Certified Tester - Foundation Level nach ISTQB-Standard) Guter Überblick über die Grundlagen des Softwaretestens. Vorstellung statischer und dynamischer Testverfahren, Testwerkzeuge Testen im Softwarelebenszyklus Aufgaben des Testmanagements Konform zum zum Certified Tester - Foundation Level F. Westphal: Testgetriebene Entwicklung mit JUnit & FIT: Wie Software änderbar bleibt Einführung in JUnit und FIT! Vorgehensweise beim Test Driven Development Webseiten - Open Source Tools for Software Testing Professionals - Üb erblick über Open-Source-Java-Testtools - Testwerkzeug (Ebene Testmanagement) - Review-Formulare, Test-Tool-Requirements, - Überblick über JUnit 52
53 Vielen Dank für Ihre Aufmerksamkeit msg systems ag Robert-Bürkle-Straße Ismaning/München Telefon: Fax: info@msg-systems.com 53
Testautomatisierung. Lessons Learned. qme Software. Gustav-Meyer-Allee 25 13355 Berlin. Telefon 030/46307-230 Telefax 030/46307-649
Testautomatisierung Lessons Learned qme Software GmbH Gustav-Meyer-Allee 25 13355 Berlin Telefon 030/46307-230 Telefax 030/46307-649 E-Mail qme Software info@qme-software.de GmbH Testautomatisierung Lessons
MehrTestautomatisierung im Projektalltag
.consulting.solutions.partnership Testautomatisierung im Projektalltag Vorlesung Software Engineering in der industriellen Praxis Agenda 1 Warum testen? 2 2 Grundlagen des Softwaretestens 7 3 Tools zur
MehrEffizienzsteigerung von Softwaretests durch Automatisierung
Bachelorarbeit am Institut für Informatik der Freien Universität Berlin, Arbeitsgruppe Programmiersprachen Effizienzsteigerung von Softwaretests durch Automatisierung David Emanuel Diestel 04.02.2016 Übersicht
MehrQualitätssicherung. Was ist Qualität?
Ein Überblick Methoden und Werkzeuge zur Softwareproduktion Was ist Qualität? "Als Qualität eines Gegenstandes bezeichnen wir die Gesamtheit seiner charakteristischen Eigenschaften" Hesse et al. 2 Was
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
MehrBasiswissen Softwaretest
Andreas Spillner Tilo Linz Basiswissen Softwaretest Aus- und Weiterbildung zum Certified Tester Foundation Level nach ISTQB-Standard 3., überarbeitete und aktualisierte Auflage I Technische l'^vrau«! D~w.-iE*arit
MehrSoftwarequalität: Einführung. 15. April 2015
Softwarequalität: Einführung 15. April 2015 Überblick Warum ist Softwarequalität wichtig? Was ist Softwarequalität? Wie erreicht man Softwarequalität? Taentzer Softwarequalität 2015 8 Berühmte Software-Fehler
MehrTesten. SEPR Referat: Testen - Oliver Herbst
Testen Inhalt 1. Grundlagen des Testens 2. Testen im Softwarelebenszyklus 3. Statischer Test 4. Dynamischer Test 5. Besondere Tests 2 1. Grundlagen des Testens 3 Grundlagen des Testens Motivation erfüllt
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
MehrTestmanagement in IT-Projekten
Teil 1: Projektmagazin 05/20009 Teil 2: Projektmagazin 06/2009 1 Test: Prozess, bei dem ein Programm oder ein Software-System ausgeführt wird, um Fehler zu finden Teil 1: Projektmagazin 05/20009 Teil 2:
MehrTestphase. Das Testen
Testphase VIS Projekt Freie Universität Berlin N.Ardet - 17.4.2001 Das Testen Testen ist das Ausführen eines Software- (Teil)systems in einer definierten Umgebung und das Vergleichen der erzielten mit
MehrSoftwaretechnik. Vertretung von Prof. Dr. Blume Fomuso Ekellem WS 2011/12
Vertretung von Prof. Dr. Blume WS 2011/12 Inhalt Test, Abnahme und Einführung Wartung- und Pflegephase gp Vorlesung Zusammenfassung Produkte und Recht (Folien von Prof. Blume) 2 , Abnahme und Einführung
MehrAutomatische Testfallgenerierung aus Modellen. 8. Neu-Ulmer Test-Engineering-Day 2013 06.06.2013 Martin Miethe
Automatische Testfallgenerierung aus Modellen 8. Neu-Ulmer Test-Engineering-Day 2013 06.06.2013 Martin Miethe Über sepp.med Über 30 Jahre Erfahrung im industriellen Umfeld Medizintechnik Pharmazie Automotive
MehrT1 - Fundamentaler Testprozess
AK 2 am Armin Beer, Support Center Test der Software- Entwicklung 1 für einen erfolgreichen Test? Projektteam strebt nach Qualität Aufwände sind eingeplant (Richtwerte) 20 bis 30% des Gesamtaufwandes In
MehrQualitätssicherung im Lebenszyklus des itcs. Anspruch und Wirklichkeit.
Qualitätssicherung im Lebenszyklus des itcs. Anspruch und Wirklichkeit. BEKA: Frankfurt, 25. Oktober 2012 T-Systems Angebot Umsetzung des globalen Telematikprojekts für den ÖPNV im Großherzogtum Luxemburg.
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
MehrDie Welt der SW-Qualität Ein Streifzug in 30 Minuten! Johannes Bergsmann Eigentümer
Die Welt der SW-Qualität Ein Streifzug in 30 Minuten! Johannes Bergsmann Eigentümer Inhalt Top Themen Requirements Testen Testautomatisierung Change-Management Risiko-Management Agile Methoden Traceability
MehrTestplan. 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
MehrSoftwarequalität: Zusammenfassung und Ausblick. 17. Juli 2013
Softwarequalität: Zusammenfassung und Ausblick 17. Juli 2013 Überblick Rückblick: Qualitätskriterien Qualitätsmanagement Qualitätssicherungsmaßnahmen Thesen zur Softwarequalität Ausblick: Lehrveranstaltungen
MehrSoftwaretests 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
MehrEin Testprozess für Modellbasiertes Testen
Ein Testprozess für Modellbasiertes Testen Seminar: Software-Qualitätssicherung Tobias Eckardt 8. Juli 2008 Testen von Softwaresystemen Fehler in einer adaptiven Geschwindigkeitsregelung (engl. adaptive
MehrTesten von graphischen Benutzeroberflächen. 24. Juni 2015
Testen von graphischen Benutzeroberflächen 24. Juni 2015 Überblick Motivation für das automatische Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien für GUIs Capture / Replay Testmethode
MehrTesten im Software- Entwicklungsprozess
Technologie-Event 2006 Testen im Software- Entwicklungsprozess W.Lukas, INGTES AG Was nicht getestet wurde, funktioniert nicht. -- R.Güdel (ca. 1998) Seite 2 Was sollen wir tun? Anomalien & Defekte von
MehrTesten - Konzepte und Techniken
Testen - Konzepte und Techniken Magdalena Luniak 21.11.2007 Magdalena Luniak () Testen - Konzepte und Techniken 21.11.2007 1 / 42 Übersicht 1 Motivation 2 Grundbegrie 3 Testen im Softwareentwicklungsprozess
MehrStandard Inhaltsverzeichnis für Testvorschrift
Standard Inhaltsverzeichnis für Testvorschrift Inhaltsverzeichnis 1. Zweck, Veranlassung... 1 2. Allgemeines... 1 2.1 Zweck der Testvorschrift... 1 2.2 Freigabe und Änderungen... 1 2.3 Prinzipien... 2
MehrIntegrierte 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)
MehrFUTURE NETWORK 20.11.2013 REQUIREMENTS ENGINEERING
18/11/13 Requirements Engineering 21 November 2013 DIE GRUNDFRAGEN Wie erhält der Kunde den größten Nutzen? Wie kann der Kunde am besten spezifizieren, was er haben will? Welchen Detailierungsgrad braucht
MehrAutomatisierte GUI Tests in fachlichen Teststufen. 07.09.2011 Patrick Möller
Automatisierte GUI Tests in fachlichen Teststufen 07.09.2011 Patrick Möller Inhaltsangabe Vorstellung und Situation BITMARCK BITMARCK und iskv_21c Testautomatisierung - warum? Teststufen bei BITMARCK Testautomatisierung
MehrDie Softwareentwicklungsphasen!
Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.
MehrTeststrategie festlegen und Teststufen aufeinander abstimmen
Testen Teststrategie festlegen und Teststufen aufeinander abstimmen Bereich Projektplanung und -steuerung Aktivität Projekt planen Ziele Effiziente Testausführung Vermeidung von doppelter Arbeit schnell
MehrBasiswissen Softwaretest
Basiswissen Softwaretest Vergleich der Vorlesung Software-Engineering Wartung und Qualitätssicherung (Stand WS13/14) mit der 4. überarbeiteten und aktualisierten Auflage von Spillner&Linz: Basiswissen
MehrTesten in KMU Projekten Bern, November 2013
Testen in KMU Projekten Bern, November 2013 Beraterprofil Stephan Wiesner Beratungsschwerpunkte Beratungsschwerpunkte Testmanagement Testautomation Entwicklung und Testen im Mobile-Umfeld Applikationsschwerpunkte
MehrWas versteht man unter Softwaredokumentation?
Was versteht man unter? Mit bezeichnet man die Dokumentation von Computer-Software. Sie erklärt für Anwender, Benutzer und Entwickler in unterschiedlichen Rollen, wie die Software funktioniert, was sie
MehrEinführung von Testautomatisierung reflektiert. Erkenntnisse eines Linienmanagers zu Herausforderungen und Fallgruben
Einführung von Testautomatisierung reflektiert Erkenntnisse eines Linienmanagers zu Herausforderungen und Fallgruben Matt Young Leiter Test Acquiring Inhaltsverzeichnis Einleitung Testautomatisierung PostFinance
MehrT2 Fundamentaler Testprozess
T2 Fundamentaler Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test Overview der Software- Entwicklung 2 1 Wasserfall-Modell Analyse
MehrProbeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16
Probeklausur Lenz Belzner January 26, 2015 Lenz Belzner Probeklausur January 26, 2015 1 / 16 Definieren Sie Software Engineering in Abgrenzung zu Individual Programming. Ingenieursdisziplin professionelle
MehrSwp08-6 Verantwortliche: Yundensuren, Baigalmaa. Testkonzept
Testkonzept 1.Einführung Um die Zuverläsigkeit und die Qualität der Software und des gesamten Systems zu verbessern, sind Tests durchzuführen. Die Testreihe läst sich in drei Stufen einteilen, nülich Komponententest,
MehrDas Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin
Fragestellungen: Warum reicht das Lastenheft nicht aus? Was kann ich mit dem Lastenheft machen? Was unterscheidet das Pflichtenheft vom Lastenheft? Was gehört zum Auftragsumfang einer Individualsoftware?
MehrKompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung.
Kompetenz rund um Ihren Entwicklungsprozess Modellieren für den Test - Segen oder Fluch? Firmenpräsentation auf der embeddedworld 2010 Dipl. Ing. (Univ) Gerhard Baier Bereichsleiter Marketing und Vertrieb
MehrDatenschutzfreundliches Projektmanagement Sven Thomsen Unabhängiges Landeszentrum für Datenschutz Schleswig-Holstein
Datenschutzfreundliches Projektmanagement Sven Thomsen Datenschutz Schleswig-Holstein Projekt? Definition Projekt: Vorhaben, das im Wesentlichen durch die Einmaligkeit der Bedingungen in ihrer Gesamtheit
MehrInformationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:
Informationssystemanalyse Problemstellung 2 1 Problemstellung Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: große Software-Systeme werden im Schnitt ein Jahr zu spät
MehrProgrammiertechnik 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
MehrT3 Testen im Software- Lebenszyklus
T3 Testen im Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test AK- 2 1 AK- Definition Test der einzelnen implementierten Komponenten
MehrSenior Consulting. Senior Consulting Strategical, Conceptual and Technical Consulting. 30.01.2011 Seite 1
30.01.2011 Seite 1 This flyer is exclusively for the use of client personnel. No part of it may be distributed, quoted or reproduced outside the client organisation without the prior written approval of
Mehrextreme Programming (XP) Hermann Götz Sergij Paholchak Agenda Was ist XP? Grundprinzipien Der Entwicklungsprozess Die Projektplanung Praktiken Vorteile und Nachteile Wann macht XP Sinn für ein Projekt?
MehrTestmanagement. Q-Day. Frank Böhr Fraunhofer IESE frank.boehr@iese.fraunhofer.de
Frank Böhr Fraunhofer IESE frank.boehr@iese.fraunhofer.de Agenda Warum Testmanagement? Was sind die wichtigsten Schritte beim Testmanagement? Wie funktioniert Testmanagement Toolunterstützung Page 1/15
MehrSL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen
SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen Christian Langmann langmann@softwareloft.de Stefan Kohrs kohrs@softwareloft.de Oktober 2013 SoftwareLoft IT-Solutions GmbH gegründet 2004
MehrÜbungsklausur vom 7. Dez. 2007
Übungsklausur vom 7. Dez. 2007 Ein Lösungsmuster Teilbereiche der Softwaretechnik Software Anforderungen Software Entwurf Software Konstruktion Software Test Software Wartung Software Konfigurationsmanagement
Mehr.. für Ihre Business-Lösung
.. für Ihre Business-Lösung Ist Ihre Informatik fit für die Zukunft? Flexibilität Das wirtschaftliche Umfeld ist stärker den je im Umbruch (z.b. Stichwort: Globalisierung). Daraus resultierenden Anforderungen,
MehrJava Entwicklung für Embedded Devices Best & Worst Practices!
Java Entwicklung für Embedded Devices! George Mesesan Microdoc GmbH Natürlich können wir dieses neue log4j Bundle auch auf dem Device verwenden. Ist doch alles Java. Java Micro Edition (ME) Java Standard
MehrProzessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08
Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements von Stephanie Wilke am 14.08.08 Überblick Einleitung Was ist ITIL? Gegenüberstellung der Prozesse Neuer
MehrAgile 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
MehrProjektmanagement. 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
MehrSoftwaretechnikpraktikum SS 2004. Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal
Softwaretechnikpraktikum SS 2004 Qualitätsmanagement I 5. Vorlesung 1. Überblick Planungsphase Definitionsphase Entwurfsphase Implem.- phase Fragen Was ist Qualität? Wie kann man Qualität messen? Wie kann
MehrTesten 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
MehrUnser verflixtes 7. Jahr im Testmanagement. Bernd Schindelasch 26. Juni 2013
Unser verflixtes 7. Jahr im Testmanagement Bernd Schindelasch 26. Juni 2013 Agenda EWE TEL GmbH Testmanagement bei EWE TEL (klassisch) Agile - SCRUM Testmanagement im SCRUM-Projekt Ausblick und Zusammenfassung
MehrStuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.
StuPro-Seminar Dokumentation in der Software-Wartung StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung Folie 1/xx Software-Wartung: theoretisch Ausgangslage eigentlich simpel: fertige
MehrNotwendigkeit der Testautomatisierung? Neue Ideen, Konzepte & Werkzeuge
i.s.x. Software GmbH & Co. KG Notwendigkeit der Testautomatisierung? Neue Ideen, Konzepte & Werkzeuge i.s.x. Software GmbH & Co. KG Dresden, 19. Februar 2013 Karin Eisenblätter Die i.s.x. Software GmbH
MehrVgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.
Vgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.pdf Nachdem die Projekt-Vision und die Stakeholder bekannt sind,
MehrSoftwaretechnik. Fomuso Ekellem WS 2011/12
WS 2011/12 Inhalt Projektvorstellung Übung 1 Wiederholung zusammengefasst Planungsphase Lernziele Ziele und Inhalt der Planungsphase Anlass und Aufgabestellung(Was ist dabei erförderlich) Requirement Engineering
MehrTesten 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
MehrHochschule Darmstadt Fachbereich Informatik
Hochschule Darmstadt Fachbereich Informatik Entwicklung webbasierter Anwendungen Praktikumsaufgaben 1 Semesterthema "Webbasierter Pizzaservice" Im Lauf des Semesters soll eine integrierte webbasierte Anwendung
MehrBuild-Pipeline mit Jenkins
JUG Augsburg 24.10.2013 Seite 1 Wer sind wir? Agiler Architekt und Entwickler Eigenes Produkt mit kompletter Pipeline / CD aktuell: Architekt / Entwickler in einem großen Entwicklungsprojekt im Automotiv
MehrDOKUMENTATION VOGELZUCHT 2015 PLUS
DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP
MehrRequirements Engineering für IT Systeme
Requirements Engineering für IT Systeme Warum Systemanforderungen mit Unternehmenszielen anfangen Holger Dexel Webinar, 24.06.2013 Agenda Anforderungsdefinitionen Von der Herausforderung zur Lösung - ein
MehrQADVICE. Forum 7-it. Software- und System-Qualitätssicherung für IT-Infrastrukturlösungen. Hermann Will 18.05.2010
Forum 7-it Software- und System-Qualitätssicherung für IT-Infrastrukturlösungen Hermann Will 18.05.2010 18.05.2010 Copyright Hermann Will 2010 Folie 1 Agenda Einführung QS Testobjekte Teststrategie Testtechniken
MehrSDD System Design Document
SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen
MehrFragebogen zur Anforderungsanalyse
Fragebogen zur Anforderungsanalyse Geschäftsprozess Datum Mitarbeiter www.seikumu.de Fragebogen zur Anforderungsanalyse Seite 6 Hinweise zur Durchführung der Anforderungsanalyse Bevor Sie beginnen, hier
MehrAbschnitt 16: Objektorientiertes Design
Abschnitt 16: Objektorientiertes Design 16. Objektorientiertes Design 16 Objektorientiertes Design Informatik 2 (SS 07) 610 Software-Entwicklung Zur Software-Entwicklung existiert eine Vielfalt von Vorgehensweisen
MehrReferent: Mathias Notheis Kontakt: Mathias.Notheis@dqs.de
ISO/IEC 62304 Medizingeräte-Software Referent: Mathias Notheis Kontakt: Mathias.Notheis@dqs.de DQS Medizin nprodukte GmbH Übersicht Basics Wann ist ein MP Software? Markteinführung vor der 62304 alles
MehrSoftwareentwicklungsprozesse. 18. Oktober 2012
Softwareentwicklungsprozesse 18. Oktober 2012 Überblick Was soll ein Softwareentwicklungsprozess leisten? Überblick über Softwareentwicklungsprozesse Welche gibt es? Warum gibt es mehrere? Diskussion:
MehrSenior Consulting. Senior Consulting Strategical, Conceptual and Technical Consulting. 30.01.2011 Seite 1
30.01.2011 Seite 1 This flyer is exclusively for the use of client personnel. No part of it may be distributed, quoted or reproduced outside the client organisation without the prior written approval of
Mehrcrm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe
crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms: Webdesigner Handbuch Copyright 2006 crm-now Versionsgeschichte Version 01 2006-08-21 Release Version crm-now c/o im-netz Neue
MehrSSI WHITE PAPER Design einer mobilen App in wenigen Stunden
Moderne Apps für Smartphones und Tablets lassen sich ohne großen Aufwand innerhalb von wenigen Stunden designen Kunde Branche Zur Firma Produkte Übersicht LFoundry S.r.l Herrngasse 379-381 84028 Landshut
MehrTesten 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,
MehrProjektmanagement aus der Praxis der Softwareentwicklung
Projektmanagement aus der Praxis der Softwareentwicklung Vorlesung im Wintersemester 2015/16 an der Technischen Universität Dortmund 4. Vorlesung am 30.11.2015: Qualitäts- und Risikomanagement Oliver Hakim
MehrAgile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg
Herzlich willkommen Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg Heike Bickert Software-/Systemingenieurin, Bereich Quality Management Braunschweig // 17.11.2015 1 Agenda ICS AG Fragestellungen
MehrTTS - TinyTimeSystem. Unterrichtsprojekt BIBI
TTS - TinyTimeSystem Unterrichtsprojekt BIBI Mathias Metzler, Philipp Winder, Viktor Sohm 28.01.2008 TinyTimeSystem Inhaltsverzeichnis Problemstellung... 2 Lösungsvorschlag... 2 Punkte die unser Tool erfüllen
Mehr10 Gesamtsystemspezifikation
Bundesamt für Informationsmanagement und Informationstechnik der Bundeswehr 10 Gesamtsystemspezifikation V-Modell XT Anwendung im Projekt
MehrProzess-Modelle für die Softwareentwicklung
Prozess-Modelle für die Softwareentwicklung Prof. Dr. Andreas Spillner Institut für Informatik und Automation Hochschule Bremen Übersicht Softwareentwicklungs-Modelle Wasserfall-Modell Vorgehensmodell
MehrFRONT CRAFT. www.frontcraft.com contact@frontcraft.com
FRONT CRAFT Viele Menschen und viele Unternehmen haben eine Webseite. Jede neue, die dazu kommt, sollte nicht nur gut, sondern erstklassig sein. Das ist unsere Leidenschaft. FrontCraft. www.frontcraft.com
MehrGPP Projekte gemeinsam zum Erfolg führen
GPP Projekte gemeinsam zum Erfolg führen IT-Sicherheit Schaffen Sie dauerhaft wirksame IT-Sicherheit nach zivilen oder militärischen Standards wie der ISO 27001, dem BSI Grundschutz oder der ZDv 54/100.
MehrTypisierung des Replikationsplan Wirries, Denis Datenbankspezialist
Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Feintypisierung - Überblick Ergebnisse Ergebnisse aus aus anderen anderen Arbeitsergebnissen Arbeitsergebnissen Replikationsplan Replikationsplan
MehrInformationssystemanalyse Grundlagen 1 1
Informationssystemanalyse Grundlagen 1 1 Software-Projekte Klassischerweise wird Software-Entwicklung in Projektform abgewickelt. Projekte kommen dabei zwischen einem Anbieter und einem Kunden zustande,
MehrKlausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement
Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement Prof. K.-P. Fähnrich, Prof. H.-G. Gräbe, T. Riechert Institut für Informatik Sommersemester 2012 Allgemeine Bemerkungen
Mehryour engineering partner boost your development
boost development Individuelle Lösungen von Ihrem Engineering Partner Luft- und Raumfahrt Wir realisieren Ihre Visionen und setzen unser ganzes Know-How ein, damit Ihre Ziele praxisgerecht, zeitnah und
MehrProjektmanagement in der Spieleentwicklung
Projektmanagement in der Spieleentwicklung Inhalt 1. Warum brauche ich ein Projekt-Management? 2. Die Charaktere des Projektmanagement - Mastermind - Producer - Projektleiter 3. Schnittstellen definieren
MehrValidierung von Software-Werkzeugen. Matthias Hölzer-Klüpfel
Validierung von Software-Werkzeugen Matthias Hölzer-Klüpfel Was ist Validierung ISO 9000:2000 Bestätigung durch Bereitstellung eines objektiven Nachweises, dass die Anforderungen für einen spezifischen
MehrAnforderungen an die HIS
Anforderungen an die HIS Zusammengefasst aus den auf IBM Software basierenden Identity Management Projekten in NRW Michael Uebel uebel@de.ibm.com Anforderung 1 IBM Software Group / Tivoli Ein Feld zum
MehrProjektmanagement. Vorlesung von Thomas Patzelt 10. Vorlesung
Projektmanagement Vorlesung von Thomas Patzelt 10. Vorlesung 1 Test...(4) Oberflächentests testen die Benutzerschnittstelle des Systems, nicht nur auf Fehlerfreiheit sondern z.b. auch auf Konformität mit
MehrKlausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
Fachhochschule Bonn-Rhein-Sieg University of Applied Sciences Fachbereich Informatik Prof. Dr. Peter Becker Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
MehrSoftwaretechnik (Allgemeine Informatik) Überblick
Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6
MehrEin Tool für automatische Performancetests von Java3D Applikationen
Ein Tool für automatische Performancetests von Java3D Applikationen Kristina Wunderlich A Tool for Automated Performance Testing of Java3D Applications in Agile Environments Xueling Shu, Frank Maurer;
MehrFortgeschrittenes 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
MehrSEP 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
MehrWiederkehrende Buchungen
Wiederkehrende Buchungen Bereich: FIBU - Info für Anwender Nr. 1133 Inhaltsverzeichnis 1. Ziel 2. Vorgehensweise 2.1. Wiederkehrende Buchungen erstellen 2.2. Wiederkehrende Buchungen einlesen 3. Details
MehrDas System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.
Usability Heuristiken Karima Tefifha Proseminar: "Software Engineering Kernkonzepte: Usability" 28.06.2012 Prof. Dr. Kurt Schneider Leibniz Universität Hannover Die ProSeminar-Ausarbeitung beschäftigt
MehrJens Borchers. Kritische Erfolgsfaktoren beim Abnahmetest in Redevelopment- Projekten Erfahrungen aus einem Großprojekt
Chemnitz 24.11.2006 Jens Borchers Kritische Erfolgsfaktoren beim Abnahmetest in Redevelopment- Projekten Erfahrungen aus einem Großprojekt Vortrag bei der RePro2006 in Chemnitz am 24. November 2006 Kritische
MehrWirtschaftsinformatik I Teil 2. Sommersemester 2008. 1. Übung
Wirtschaftsinformatik I Teil 2 Sommersemester 2008 1. Übung Sarah Mund, Kirstin Simon, Markus Trierweiler, Christian Molitor, Jonathan Jäger, Björn Kirsten Aufgabenstellung Diskutieren Sie die Vor- und
MehrSoftwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler
Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 4 Lösungshilfe. Aufgabe 1. Zustandsdiagramm (8 Punkte) Geben Sie ein Zustandsdiagramm für
Mehr