Softwareentwicklung und Projektmanagement

Welche Beschreibung gibt das Vorgehen bei der testgetriebenen Entwicklung (TDD) richtig wieder?

  1. AEinen Test schreiben, der noch fehlschlägt, den minimalen Code schreiben, mit dem er besteht, und dann refaktorisieren, wobei die Tests weiterhin bestehen
  2. BDen gesamten Code einer Funktion fertigstellen und dann Testfälle erstellen, indem man den Verzweigungen in diesem Code folgt
  3. CEigene Tester schreiben die Tests, und die Entwickler führen bis zur Phase des Integrationstests keine Tests aus
Antwort und Erläuterung anzeigen

Antwort: A. Einen Test schreiben, der noch fehlschlägt, den minimalen Code schreiben, mit dem er besteht, und dann refaktorisieren, wobei die Tests weiterhin bestehen

Bei der testgetriebenen Entwicklung wird zuerst ein kleiner Teil der Spezifikation der zu bauenden Funktion als Test geschrieben und ausgeführt, um zu bestätigen, dass er fehlschlägt (Rot). Danach wird der minimale Code geschrieben, mit dem dieser Test besteht (Grün), und anschließend werden Duplikate und andere Mängel bereinigt, während die Tests weiter bestehen (Refactoring). In diesem kurzen Zyklus wachsen die Funktionen Stück für Stück, während stets ein vollständiger Satz von Tests vorhanden ist. Auch bei eingebetteter Firmware werden die hardwareabhängigen Teile austauschbar gemacht, sodass Modultests wiederholt auf einem Entwicklungs-PC ausgeführt werden können.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Softwareentwicklung und Projektmanagement

  1. Welche Beschreibung trifft auf Continuous Integration (CI) zu?
  2. Welche Aussage beschreibt den Unterschied zwischen Continuous Delivery und Continuous Deployment richtig?
  3. Welche der folgenden Anforderungen an ein Geschäftssystem ist eine nichtfunktionale Anforderung?
  4. Welches UML-Diagramm eignet sich, um zu zeigen, wie sich der Zustand eines Objekts als Reaktion auf Ereignisse (einen Tastendruck, den Ablauf eines Timers, das Erreichen einer Temperatur usw.) ändert, etwa in der Steuerungssoftware eines Reiskochers?
  5. Welches UML-Diagramm zeigt die zwischen mehreren Objekten ausgetauschten Nachrichten (Aufrufe und Antworten) in zeitlicher Reihenfolge von oben nach unten?