Testbarkeit

Testbarkeit

Testbarkeit ist der Grad, zu dem ein Software-Artefakt (ein Software-System, ein Software-Modul, ein Anforderungs- oder Entwicklungsdokument) den Test in einem gegebenen Testkontext unterstützt.

Testbarkeit ist keine intrinsische Eigenschaft von Software-Artefakten und kann nicht direkt (wie z. B. der Software-Umfang) gemessen werden. Stattdessen ist Testbarkeit eine extrinsische Eigenschaft, die sich aus der Wechselwirkung der Software mit den Testzielen, Test-Ressourcen und eingesetzten Testverfahren (d. h. dem Testkontext) ergibt.

Je geringer die Testbarkeit ist, desto höher ist der Testaufwand. Im Extremfall ist bei schlechter Testbarkeit der Test von Teilen der Software-Anforderungen gar nicht möglich.

Inhaltsverzeichnis

Hintergrund

Der Aufwand und die Effektivität eines Software-Tests hängen unter anderem von den folgenden Faktoren ab:

  • Software-Anforderungen
  • Eigenschaften der Software wie Umfang, Komplexität und Testbarkeit
  • Eingesetzte Testmethoden
  • Entwicklungs- und Testprozess
  • Qualifikation und Motivation der am Test beteiligten Personen

Testbarkeit von Software

Die Testbarkeit von Software wird u.a. durch folgende Faktoren bestimmt:

  • Kontrollierbarkeit: Das Testobjekt kann in den für den Test erforderlichen Zustand gebracht werden.
  • Beobachtbarkeit: Das Testergebnis kann beobachtet werden.
  • Isolierbarkeit: Das Testobjekt kann isoliert getestet werden.
  • Trennung der Verantwortlichkeit: Das Testobjekt hat eine wohldefinierte Verantwortlichkeit.
  • Verständlichkeit: Das Testobjekt ist selbsterklärend bzw. gut dokumentiert.
  • Automatisierbarkeit: Die Tests lassen sich automatisieren.
  • Heterogenität: Unterschiedliche Technologien erfordern den gleichzeitigen Einsatz von unterschiedlichen Testverfahren und -Werkzeugen.

Die Testbarkeit der Software wird verbessert durch:

Testbarkeit von Anforderungen

Anforderungen sind testbar, wenn sie folgende Kriterien erfüllen:

  • konsistent
  • vollständig
  • eindeutig: Die Anforderung kann nicht unterschiedlich interpretiert werden.
  • quantitativ formuliert: Eine Anforderung wie "schnelle Antwortzeit" kann nicht verifiziert werden.
  • praktisch verifizierbar: Der Test ist nicht nur theoretisch möglich, sondern auch mit begrenztem Aufwand in der betrieblichen Praxis durchführbar.

Weblinks

Literatur


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Model View Presenter — (Abkürzung: MVP; wörtlich etwa ‚Modell Ansicht Präsentator‘) ist ein Entwurfsmuster in der Softwareentwicklung, das aus dem Model View Controller (Abkürzung: MVC) hervorgegangen ist. Es beschreibt einen neuartigen Ansatz, um das Modell (engl.… …   Deutsch Wikipedia

  • Refaktorierung — Refactoring (deutsch auch Refaktorisierung, Refaktorierung, Restrukturierung oder schlicht Umgestaltung) bezeichnet in der Software Entwicklung die manuelle oder automatisierte Strukturverbesserung von Programm Quelltexten unter Beibehaltung des… …   Deutsch Wikipedia

  • Refaktorisierung — Refactoring (deutsch auch Refaktorisierung, Refaktorierung, Restrukturierung oder schlicht Umgestaltung) bezeichnet in der Software Entwicklung die manuelle oder automatisierte Strukturverbesserung von Programm Quelltexten unter Beibehaltung des… …   Deutsch Wikipedia

  • Einzelstück (Entwurfsmuster) — Das Singleton (auch Einzelstück genannt) ist ein in der Softwareentwicklung eingesetztes Entwurfsmuster und gehört zur Kategorie der Erzeugungsmuster (engl. Creational Patterns). Es verhindert, dass von einer Klasse mehr als ein Objekt erzeugt… …   Deutsch Wikipedia

  • Extreme programming — (XP), auch Extremprogrammierung, ist eine agile Methode, die das Lösen einer Programmieraufgabe in den Vordergrund der Softwareentwicklung stellt und dabei einem formalisierten Vorgehen geringere Bedeutung zumisst. Die Extremprogrammierung… …   Deutsch Wikipedia

  • Extremprogrammierung — Extreme Programming (XP), auch Extremprogrammierung, ist eine agile Methode, die das Lösen einer Programmieraufgabe in den Vordergrund der Softwareentwicklung stellt und dabei einem formalisierten Vorgehen geringere Bedeutung zumisst. Die… …   Deutsch Wikipedia

  • Functional Grammar — (FG) ist eine linguistische Theorie, die Ende der 1970er Jahre von Simon Cornelis Dik in Amsterdam entwickelt wurde, ausdrücklich als Gegenmodell zum Standard Modell der Transformationsgrammatik von Noam Chomsky. Nach dem Tod Diks 1995 wurde die… …   Deutsch Wikipedia

  • ISO/ IEC 9126 — Die Norm ISO/IEC 9126 stellt eins von vielen Modellen dar, um Softwarequalität sicherzustellen. Es bezieht sich ausschließlich auf die Produktqualität und nicht die Prozessqualität. Diese ISO Norm ist in der Norm ISO/IEC 25000 aufgegangen und… …   Deutsch Wikipedia

  • ISO 9126 — Die Norm ISO/IEC 9126 stellt eins von vielen Modellen dar, um Softwarequalität sicherzustellen. Es bezieht sich ausschließlich auf die Produktqualität und nicht die Prozessqualität. Diese ISO Norm ist in der Norm ISO/IEC 25000 aufgegangen und… …   Deutsch Wikipedia

  • Refactoring — (deutsch auch Refaktorierung, Restrukturierung oder Umgestaltung) bezeichnet in der Software Entwicklung die manuelle oder automatisierte Strukturverbesserung von Programm Quelltexten unter Beibehaltung des beobachtbaren Programm Verhaltens.… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”