Wie Integrationstests zu tun
Ironischerweise bedeutet Integrationstests völlig verschiedene Dinge völlig verschiedenen Unternehmen. Bei Microsoft ich bezeichnen typischerweise Integrationstests als Tests, die am Ende eines Meilenstein auftreten und dass „stabilisiert“, ein Produkt. Features des neuen Meilenstein sind integrations getestet mit Funktionen aus früheren Meilensteine. Bei Circuit City, jedoch haben wir auf Integrationstests wie der Test in nur nach einem Entwickler Kontrolle getan - es ist die Stabilisierung Tests, wenn zwei Entwickler Check-in-Code auftritt. Ich würde diese Funktion Test nennen, ehrlich gesagt ...
Aber um Ihre Frage zu beantworten, top-down vs. Bottom-up-Tests ist einfach so, wie Sie die Dinge sehen. Bottom-up-Tests sind das Testen von Code, der fast eine Erweiterung der Unit-Tests in Betracht gezogen werden könnte. Es ist sehr viel auf dem Merkmal fokussiert umgesetzt und dieses Merkmal des ausgehenden Abhängigkeiten, was bedeutet, wie das Feature Auswirkungen in anderen Bereichen des Produkts / Projekts.
Top-down, auf der anderen Seite, ist die Prüfung von einer systemischen Sicht. Es testet ein Gesamtprodukt, nachdem eine neue Funktion eingeführt wird, und überprüfen, ob die Features, die es mit stabil interagiert und dass es „gut spielt“‘mit anderen Funktionen.
Der Schlüssel zum hier zu testen ist, dass Sie in dem Prozess des Übergangs über die Komponentenebene und Prüfung als System sind. Ehrlich gesagt, allein weder Ansatz ist ausreichend. Sie müssen die Teile mit der Perspektive des Ganzen testen. Ein Teil dieses Tests ist zu sehen, wie das System als Ganzes auf die Daten reagiert (oder Zustände), die durch die neue Komponente. Sie wollen sicherstellen, dass Daten, die von der Komponente herausgeschoben werden, nicht nur gut formatiert (was Sie während Komponententests getestet), aber dass andere Komponenten erwarten und dass gut formatierte Daten verarbeiten kann. Sie müssen auch überprüfen, ob die Daten innerhalb des bestehenden Systems mit Ursprung ordnungsgemäß durch die neue Komponente behandelt.
Wir sehen ständige Wandel in dem Test Beruf, mit neuen Methoden des ganzen Zeit vorgeschlagen. Das ist gut - es ist alles Teil der Bewegung von der Kunst zur Wissenschaft Handwerk. Aber ebenso wie bei keinem anderen Zweck, können wir nicht alle unsere Tests eine Methodik drehen, weil eine Größe passt nicht allen. Bottom-up und Top-down-Tests sind beide kritischen Komponenten eines Integrationstestplanes und beide müssen erheblichen Fokus, wenn die QA Organisation will Software-Qualität zu maximieren.