Struktura narzędzia do testowania

Uruchamiający test to jednostka wykonania przepływu wywołania. To właśnie tam są wykonywane testy.

Interfejsy

Testy są definiowane za pomocą interfejsu IRemoteTest, który udostępnia prostą metodę run do wdrożenia, która jest wywoływana podczas przeprowadzania testów.

Umożliwia to najprostszą definicję uruchomienia testowego. W praktyce jednak osoby zapisujące testy będą potrzebować więcej informacji, aby prawidłowo pisać testy – zwykle są to np. informacje o kompilacji i urządzeniach. Tutaj z pomocą przydają się poniższe interfejsy.

Podstawowe

Te 2 interfejsy są obecnie najczęściej używane, ponieważ spełniają podstawowe potrzeby większości testów.

  • IBuildReceiver umożliwia testowi pobranie obiektu IBuildInfo utworzonego w kroku dostawcy kompilacji ze wszystkimi informacjami i artefaktami związanymi z konfiguracją testu.
  • IDeviceTest umożliwia TF otrzymanie obiektu ITestDevice, który reprezentuje testowane urządzenie, oraz udostępnia interfejs API do interakcji z tym urządzeniem.

Zaawansowane

Istnieją dodatkowe interfejsy, które umożliwiają bardziej złożoną interakcję między narzędziem testowym a programem do uruchamiania testów:

  • ITestFilterReceiver, który umożliwia testowi otrzymywanie zestawu filtrów tylko do uruchamiania określonych testów. Jest to przydatne podczas uruchamiania podzbioru testów.
  • ITestCollector, który umożliwia uruchamianie testów tylko próbnemu przeprowadzaniu testów zamiast ich faktycznego wykonywania. Przydaje się to podczas tworzenia listy wszystkich przypadków testowych.

Istniejące narzędzia do testowania

Istnieje już wiele różnych uruchomień testów, w tym niektóre dla głównych typów testów:

Oprócz wymienionych wyżej istnieje wiele niestandardowych narzędzi do testowania. Służą one do specjalistycznych celów, np. do testowania funkcjonalności.

Pisanie nowego test runnera

Więcej wskazówek dotyczących tworzenia nowego narzędzia do testowania znajdziesz w sekcji poświęconej tworzeniu testów.