Aby zintegrować testy z usługą ciągłego testowania na platformie, powinny one spełniać wytyczne podane na tej stronie i postępować zgodnie z tym zalecanym przepływem.
- Użyj systemu kompilacji Soong w przypadku prostej konfiguracji testu.
- Użyj Test Mapping, aby tworzyć reguły testowe przed i po przesłaniu bezpośrednio w drzewie źródłowym Androida.
- Uruchamiaj testy lokalnie za pomocą Atest.
Typy testów
Obsługiwane typy testów:
- Testy instrumentacyjne obsługują zarówno testy funkcjonalne, jak i testy wskaźników. Ogólne wskazówki dotyczące testowania aplikacji znajdziesz w artykule Testowanie aplikacji.
- GoogleTest (GTest) obsługuje te typy testów:
- Testy funkcjonalne GTest z użyciem platformy GTest
- Testy danych z użyciem
google-benchmark
- Testy hosta JAR z użyciem JUnit
Testy funkcjonalne sprawdzają, czy elementy testowania zostały wykonane prawidłowo, a testy wskaźników zwykle wykonują działanie wielokrotnie, aby zebrać dane o czasie.
Dzięki standardowemu formatowi danych wejściowych i wyjściowych nie trzeba dostosowywać analizy wyników ani przetwarzania końcowego dla każdego testu. Można używać ogólnych platform testowych do wszystkich testów, które są zgodne z konwencją. Więcej informacji o platformie testów ciągłych dołączonej do Androida znajdziesz w artykule na temat Trade Federation.
Wskazówki dotyczące przypadków testowych
Testy wykonywane w ramach usługi ciągłego testowania powinny być hermetyczne, co oznacza, że wszystkie zależności są deklarowane i dostarczane wraz z testami. Więcej informacji o tej zasadzie znajdziesz w artykule Hermetic Servers na blogu Google Testing (w języku angielskim). Krótko mówiąc, testy hermetyczne nie wymagają:
- Logowanie się na konto Google
- Skonfigurowano łączność (telefonia/Wi-Fi/Bluetooth/NFC)
- Przekazane parametry testu
- Konfiguracja lub wyłączenie wykonane przez platformę testową dla konkretnego przypadku testowego