Zum Inhalt springen
← Alle CTFL-Lernziele

CTFL 2.1.4: Die möglichen Auswirkungen von DevOps auf das Testen zusammenfassen

K2

Lehrplanabschnitt 2.1.4

3 eigene PrepBench-Übungsfragen zum Lernziel 2.1.4 des CTFL-Lehrplans 4.0. Probiere die Beispiele aus und überprüfe jede Antwort anhand der Lehrplanstelle.

Übungsfragen

Frage 1

Ein Team richtet kontinuierliche Integration (CI) ein: Jeder Commit wird gebaut, und vor dem Merge laufen die Komponententests und die statische Analyse. Welche Auswirkung hat das auf das Testen?

  1. Manuelle Tests aus Benutzerperspektive werden entbehrlich, sobald die CI stabil läuft
  2. Es kommt zu Shift-Left, da Entwickler Code mit Komponententests und statischer Analyse liefern
  3. Das Regressionsrisiko steigt, da die automatisierten Prüfungen die Regressionstests ersetzen
  4. Der Testaufwand sinkt, da die CI-Einrichtung kaum Definition und Wartung erfordert
Antwort anzeigen
  • Manuelle Tests aus Benutzerperspektive werden entbehrlich, sobald die CI stabil läuftTrotz eines hohen Maßes an automatisierten Tests bleiben manuelle Tests aus Benutzerperspektive erforderlich.
  • Richtige Antwort: Es kommt zu Shift-Left, da Entwickler Code mit Komponententests und statischer Analyse liefernCI fördert Shift-Left, indem Entwickler Code zusammen mit Komponententests und statischer Analyse liefern.
  • Das Regressionsrisiko steigt, da die automatisierten Prüfungen die Regressionstests ersetzenDevOps minimiert das Regressionsrisiko durch Umfang und Bandbreite automatisierter Regressionstests, statt sie zu verdrängen.
  • Der Testaufwand sinkt, da die CI-Einrichtung kaum Definition und Wartung erfordertDie Auslieferungskette muss definiert und etabliert und die CI/CD-Werkzeuge müssen eingeführt und gewartet werden.

CI fördert Shift-Left beim Testen, indem Entwickler dazu angehalten werden, qualitativ hochwertigen Code zusammen mit Komponententests und statischer Analyse bereitzustellen — genau das erzwingt diese Kette. DevOps liefert außerdem schnelle Rückmeldung zur Codequalität und minimiert das Regressionsrisiko durch Umfang und Bandbreite der automatisierten Regressionstests; die Auslieferungskette selbst muss jedoch definiert und etabliert und ihre Werkzeuge gewartet werden, und manuelle Tests — insbesondere aus Benutzerperspektive — bleiben erforderlich.

Lehrplanabschnitt 2.1.4

Frage 2

Ein halbes Jahr nach Einführung von DevOps berichtet ein Team, die Kette funktioniere, doch das Lauffähighalten der automatisierten Tests koste mehr Aufwand als erwartet und bremse die Auslieferung. Welches Risiko von DevOps zeigt sich hier?

  1. Schnelle Rückmeldung über die Codequalität geht verloren, sobald die Kette eine gewisse Größe überschreitet
  2. Die zunehmende Sichtbarkeit nicht-funktionaler Qualitätsmerkmale lenkt das Team ab
  3. Die Automatisierung über die Auslieferungskette reduziert den Bedarf an sich wiederholenden manuellen Tests
  4. Die Testautomatisierung erfordert zusätzliche Ressourcen und kann schwierig einzurichten und zu warten sein
Antwort anzeigen
  • Schnelle Rückmeldung über die Codequalität geht verloren, sobald die Kette eine gewisse Größe überschreitetSchnelle Rückmeldung ist ein genannter Vorteil, und ein solcher Verlust wird nicht beschrieben.
  • Die zunehmende Sichtbarkeit nicht-funktionaler Qualitätsmerkmale lenkt das Team abDie zunehmende Sichtbarkeit nicht-funktionaler Merkmale ist ein genannter Vorteil.
  • Die Automatisierung über die Auslieferungskette reduziert den Bedarf an sich wiederholenden manuellen TestsDer geringere Bedarf an manuellen Tests ist ein genannter Vorteil, nicht das Problem.
  • Richtige Antwort: Die Testautomatisierung erfordert zusätzliche Ressourcen und kann schwierig einzurichten und zu warten seinRessourcenbedarf und Wartungsaufwand der Automatisierung sind ein genanntes Risiko.

Der Lehrplan nennt drei Risiken und Herausforderungen von DevOps: Die Auslieferungskette muss definiert und etabliert werden, CI/CD-Werkzeuge müssen eingeführt und gewartet werden, und die Testautomatisierung erfordert zusätzliche Ressourcen und kann schwierig einzurichten und zu warten sein. Das berichtete Symptom entspricht dem dritten. Die anderen Optionen geben Vorteile wieder.

Lehrplanabschnitt 2.1.4

Frage 3

Die DevOps-Kette eines Teams führt bei jedem Commit eine umfangreiche automatisierte Suite aus, und das Team schlägt vor, manuelles Testen ganz einzustellen. Wie ist dieser Vorschlag zu beurteilen?

  1. Er ist tragfähig, da eine CI/CD-Kette alle Teststufen automatisch abdeckt
  2. Manuelle Tests, insbesondere aus Benutzerperspektive, bleiben weiterhin erforderlich
  3. Er ist tragfähig, sofern ein unabhängiges Testteam die automatisierte Suite übernimmt
  4. Er ist nur so lange verfrüht, bis die Kette 100 % Codeüberdeckung erreicht
Antwort anzeigen
  • Er ist tragfähig, da eine CI/CD-Kette alle Teststufen automatisch abdecktEine Kette automatisiert Auslieferung und Tests, deckt aber nicht von sich aus alle Stufen ab.
  • Richtige Antwort: Manuelle Tests, insbesondere aus Benutzerperspektive, bleiben weiterhin erforderlichManuelle Tests aus Benutzerperspektive bleiben nötig.
  • Er ist tragfähig, sofern ein unabhängiges Testteam die automatisierte Suite übernimmtWer die Suite verantwortet, ändert nichts am Bedarf an manuellen Tests.
  • Er ist nur so lange verfrüht, bis die Kette 100 % Codeüberdeckung erreichtDer Lehrplan nennt keine Überdeckungsschwelle, ab der der Bedarf entfiele.

Obwohl DevOps ein hohes Maß an automatisierten Tests mit sich bringt, sind manuelle Tests — insbesondere aus Benutzerperspektive — weiterhin erforderlich. Die Vorteile von DevOps, etwa schnelle Rückmeldungen und ein durch den Umfang der automatisierten Regressionstests minimiertes Regressionsrisiko, heben diesen Bedarf nicht auf, und eine Überdeckungsschwelle, ab der er entfiele, wird nicht genannt.

Lehrplanabschnitt 2.1.4

Eigenes PrepBench-Übungsmaterial, keine offiziellen Prüfungsfragen und keine Prüfungsdumps. PrepBench ist unabhängig und weder mit dem ISTQB® verbunden noch von ihm unterstützt.

Glossarbegriffe in diesem Kapitel