Struktur eines Testläufers

Der Testläufer ist die Ausführungseinheit des Aufrufablaufs. Hier werden tatsächlich Tests durchgeführt.

Schnittstellen

Testläufer werden über die IRemoteTest-Schnittstelle definiert, die eine einfache zu implementierende run bereitstellt, die aufgerufen wird, wenn die Tests ausgeführt werden sollen.

Dies ermöglicht die einfachste Definition eines Testlaufs. In der Praxis benötigen Testautoren jedoch mehr Informationen, um ihre Tests ordnungsgemäß zu schreiben, typischerweise Build- und Geräteinformationen. Hier kommen die folgenden Schnittstellen zum Einsatz.

Basic

Diese beiden Schnittstellen werden heute am häufigsten verwendet, da sie die Grundbedürfnisse der meisten Tests abdecken.

  • Mit IBuildReceiver kann der Test das im Build-Provider- Schritt erstellte IBuildInfo Objekt abrufen, das alle Informationen und Artefakte im Zusammenhang mit dem Test-Setup enthält.
  • Mit IDeviceTest kann TF das ITestDevice Objekt empfangen, das das zu testende Gerät darstellt, und eine API für die Interaktion mit ihm bereitstellen.

Fortschrittlich

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

  • ITestFilterReceiver , wodurch der Test eine Reihe von Filtern nur zum Ausführen bestimmter Tests empfangen kann. Dies ist nützlich, um eine Teilmenge der Tests auszuführen.
  • ITestCollector , der es einem Testläufer ermöglicht, die Tests nur trocken auszuführen, anstatt sie tatsächlich auszuführen. Dies ist hilfreich beim Sammeln der Liste aller Testfälle.

Bestehende Testläufer

Es gibt bereits eine Vielzahl von Testläufern, einige davon für wichtige Testtypen:

Darüber hinaus gibt es eine große Anzahl benutzerdefinierter Testläufer. Sie dienen speziellen Zwecken für einige Funktionstests, beispielsweise den Boot-Test.

Schreiben Sie einen neuen Testläufer

Weitere Anleitungen zum Schreiben eines neuen Testläufers finden Sie im Abschnitt zum Schreiben von Tests .