Struktura narzędzia do testowania

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

Interfejsy

Uruchamiacze testów są definiowane za pomocą interfejsu IRemoteTest, który udostępnia prostą metodę run do implementacji, która zostanie wywołana podczas uruchamiania testów.

Umożliwia to najprostszą definicję przeprowadzenia testu. W praktyce jednak do prawidłowego napisania testów autorzy testów będą potrzebować więcej informacji, zazwyczaj informacji o kompilacji i urządzeniu. Właśnie w takich sytuacjach przydają się te interfejsy.

Podstawowe

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

  • IBuildReceiver pozwala testowi uzyskać obiekt IBuildInfo utworzony na etapie build provider, zawierający wszystkie informacje i elementy związane 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 narzędziu do testowania tylko symulowanie testów zamiast ich rzeczywistego wykonywania. Jest to przydatne przy zbieraniu listy wszystkich przypadków testowych.

Istniejące narzędzia do testowania

Istnieje już wiele narzędzi do testowania, niektóre z nich obsługują główne typy 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.