Module


General information
Testen von Software
Software Testing
TSW
TestSW-01-BA-M
Prof. Dr. Lüssem, Jens (jens.luessem@haw-kiel.de)
Dipl.-Inform. Hinkelmann, Kai (kai.hinkelmann@haw-kiel.de)
Prof. Dr. Lüssem, Jens (jens.luessem@haw-kiel.de)
Oenings, Hendrik (hendrik.oenings@haw-kiel.de)
M.Sc. Petersen, Eike (eike.petersen@haw-kiel.de)
Sommersemester 2024
1 Semester
In der Regel im Sommersemester
Deutsch
Curricular relevance (according to examination regulations)
Study Subject Study Specialization Study Focus Module type Semester
B.Eng. - Wing - Wirtschaftsingenieurwesen - Elektrotechnik (PO 2017, V1) Digitale Wirtschaft Wahlmodul
B.Sc. - INF - Informatik (PO 2021,V1) Pflichtmodul
B.Eng. - E - Elektrotechnik (PO 2017, V3) Kommunikationstechnik und Embedded Systems Wahlmodul
B.Eng. - Me (PO 2023) - Mechatronik (PO 2023, V4) Wahlmodul
B.Sc. - INI - Informationstechnologie (PO 2017, V1) Angewandte Informatik Wahlmodul
B.Eng. - E - Elektrotechnik (PO 2017, V3) Technische Informatik Wahlmodul
B.Eng. - Ming - Medieningenieur/-in (PO 2018, V1 + PO 2021, V2) Pflichtmodul
B.Eng. - Wing - Wirtschaftsingenieurwesen - Elektrotechnik (PO 2017, V1) Kommunikationstechnik Wahlmodul

Qualification outcome
Areas of Competence: Knowledge and Understanding; Use, application and generation of knowledge; Communication and cooperation; Scientific self-understanding / professionalism.
Fachkompetenz:
Die Studierenden kennen die Prozesse der Qualitätssicherung von Software. Sie kennen die unterschiedlichen Testklassen, -Techniken und -Strategien. Sie kennen die wichtigsten Tools und deren Bedeutung in einem typischen Softwaretestprozess (Versionsmanagement, Continous Integration Server, Test Frameworks, Code Metriken, …).
Methodenkompetenz:
Sie können die jeweils richtige Strategie für eine bestimmte Testaufgabe auswählen und umsetzen.
Die Studierenden können die für die Testaufgabe geeigneten Tools auswählen und zielgerichtet einsetzen. Sie beschaffen sich Dokumentation über die eingesetzten Tools und eignen sich den Umgang mit den Tools eigenständig an. Sie können auf Basis von Anforderungsdokumenten Testfälle formulieren und durchführen.
Content information
In diesem Modul werden die theoretischen Grundlagen des Testens vermittelt:
• Testen im Software-Lebenszyklus
• Testlevel / Testarten
• Statische Techniken der Qualitätssicherung von Software
• Dynamische Techniken der Qualitätssicherung von Software
• Testorganisation
• Softwarequalität und Risikomanagement
• Testwerkzeuge

Diese Grundlagen werden anhand praktischer Beispiele z.B. in Python vertieft:
• Teststrategien: Random- , Differential- ,Regression-Testing, ...
• Testklassen: Unit-, Modul-, Komponenten-, Integrations-, GUI-, System- und Akzeptanz-Tests
• Testtechniken: Fault Injection, Blackbox und Whitebox-Testing, Assertions
• Testabdeckung / Code Coverage
• BugTriage

Das Modul vermittelt außerdem den praktischen Einstieg in typische Testtools, z.B.
• Continous Integration Server (Jenkins / Bamboo)
• Unit Test Frameworks, z.B. Junit, PyUnit
• Code Coverage Tools
• Static Code Analyzers
• Profiler
• Agile Testing, M. Baumgartner et al, ISBN: 978-3-446-43194-2
• Koomen, T., Pol, M. and Allott, S.K.: Test Process Improvement, Addison-Wesley Longman, 2002
• Liggesmeyer, P.: Software-Qualität: Testen, Analysieren und Verifizieren von Software, Spektrum Verlag, 2009.
• Spillner, A., Linz, T.: Basiswissen Softwaretest. Dpunkt-Verlag, 2012
• Weitere Literatur wird rechtzeitig vor Beginn der Veranstaltung bekanntgegeben.
Teaching formats of the courses
Teaching format SWS
Lehrvortrag 2
Labor 2
Workload
4 SWS
5,0 Credits
48 Hours
102 Hours
Module Examination
Method of Examination Duration Weighting wird angerechnet gem. § 11 Absatz 2 PVO Graded Remark
Veranstaltungsspezifisch 100 % Klausur und Projekt
Miscellaneous
Fundierte Programmierkenntnisse aus den vorangegangenen Modulen (PRG, OOP, MOB).