Struktur eines Testlaufs

Der Test-Runner ist die Ausführungseinheit des Aufrufvorgangs. Hier werden die Tests tatsächlich ausgeführt.

Schnittstellen

Test-Runner werden über die IRemoteTest Schnittstelle, die eine einfache run Methode zur Implementierung bietet, die aufgerufen wird, wenn die Tests ausgeführt werden sollen, definiert.

So kann ein Testlauf auf einfachste Weise definiert werden. In der Praxis benötigen Testentwickler jedoch weitere Informationen, um ihre Tests richtig zu schreiben, in der Regel Build- und Geräteinformationen. Hier sind die folgenden Schnittstellen hilfreich.

Einfach

Diese beiden Schnittstellen werden heute am häufigsten verwendet, da sie die grundlegenden Anforderungen der meisten Tests erfüllen.

  • IBuildReceiver ermöglicht dem Test, das IBuildInfo Objekt abzurufen, das im Schritt des Build Anbieters erstellt wurde und alle Informationen und Artefakte enthält, die mit der Testeinrichtung zusammenhängen.
  • IDeviceTest ermöglicht TF den Empfang des ITestDevice-Objekts, das das zu testende Gerät darstellt, und stellt eine API zur Interaktion damit bereit.

Erweitert

Es gibt zusätzliche Schnittstellen, die eine komplexere Interaktion zwischen dem Test-Harness und dem Test-Runner ermöglichen:

  • ITestFilterReceiver, mit dem der Test eine Reihe von Filtern empfangen kann, um nur bestimmte Tests auszuführen. Dies ist nützlich, um eine Teilmenge der Tests auszuführen.
  • ITestCollector, mit dem ein Test-Runner die Tests nur probeweise ausführen kann, anstatt sie tatsächlich auszuführen. Dies ist nützlich, um die Liste aller Testfälle zu erfassen.

Vorhandene Test-Runner

Es gibt bereits eine Vielzahl von Test-Runnern, einige für wichtige Testtypen:

Neben den oben genannten gibt es eine große Anzahl benutzerdefinierter Test-Runner, die spezielle Zwecke für einige Funktionstests erfüllen, z. B. Boot-Tests.

Neuen Test-Runner schreiben

Weitere Informationen zum Schreiben eines neuen Test-Runners finden Sie im Abschnitt Tests schreiben.