Die Pyramide sagt: viele schnelle Unit-Tests, weniger Integrationstests und eine kleine Zahl End-to-End-Tests, weil Kosten und Flakiness nach oben hin steigen, während die Feedback-Geschwindigkeit sinkt. Als Kostenmodell gilt sie weiterhin. Verändert hat sich, dass bei verteilten Services die mittlere Schicht mehr zählt, Contract- und Integrationstests also oft einen größeren Anteil verdienen, als die klassische Form nahelegt.
Warum Interviewer das fragen
Das ist eine Strategiefrage, und der Interviewer will wissen, ob du über die Testverteilung nachdenken kannst statt ein Diagramm aufzusagen. Eine gute Antwort erklärt, warum die Form existiert (Kosten, Tempo und Verlässlichkeit, nicht Dogma), und zeigt, dass du eine Meinung dazu hast, wo sie sich biegt. Wer starre Prozentzahlen verteidigt, hat meist keine große Suite durch einen Umbau gebracht.
So baust du deine Antwort auf
- Beschreib jede Schicht und ihre relative Anzahl.
- Erklär die Kosten- und Tempo-Logik hinter der Form.
- Sag, wo sich die Form für moderne Architekturen biegt.
- Gib deine eigene Regel, in welche Schicht ein Test gehört.
Beispielantwort
Die Form kommt aus der Ökonomie. Ein Unit-Test läuft in Millisekunden, schlägt aus genau einem Grund fehl und lügt dich fast nie an. Ein End-to-End-Test läuft Minuten, hängt an einem Browser, einem Netzwerk und sechs Services, und wenn er rot wird, verbringst du zwanzig Minuten damit herauszufinden, ob das Produkt kaputt ist oder die Umgebung. Also willst du viele von den billigen und nur so viele von den teuren, wie nötig sind, um zu belegen, dass die Teile zusammenhängen. Wo ich die klassische Form biegen sehe, ist bei verteilten Systemen. Ist ein Service überwiegend Orchestrierung, testet ein schweres Unit-Testing nur deine eigenen Mocks, also schiebe ich Gewicht in Integrations- und Contract-Tests, was eine Form näher an einer Raute ergibt. Meine Regel fürs Platzieren eines Tests ist zu fragen, was das Kleinste ist, das dieses Verhalten brechen könnte, und auf dieser Ebene zu testen. Ist das Risiko eine Berechnung, dann Unit. Ist das Risiko, dass zwei Services sich über einen Payload uneinig sind, dann Contract. End-to-End behalte ich für eine Handvoll Journeys, die niemals still brechen dürfen.
Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.
So funktioniert esNachfragen, mit denen du rechnen solltest
- Wie viele End-to-End-Tests wären dir zu viele?
- Was ist das Ice-Cream-Cone-Antipattern und wie landet ein Team dort?
- Wo sitzen Contract-Tests in diesem Modell?
Weitere Fragen für QA Engineer
Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.
Meine Fragen vorhersagen