Testy natywne

Natywny test platformy zazwyczaj uzyskuje dostęp do warstw HAL niższego poziomu lub wykonuje nieprzetworzone IPC dla różnych usług systemowych. Dlatego podejście do testowania jest zwykle ściśle powiązane z testowaną usługą.

Budowanie rodzimych testy z wykorzystaniem numeru GTEST ramy. Jest to warunek wstępny integracji z infrastrukturą ciągłego testowania.

Przykłady

Oto kilka przykładów testów natywnych w źródle platformy:

Podsumowanie kroków

  1. Zobacz przykładową konfigurację modułu testu na natywny: Ramy / base / libs / hwui / testy / jednostka /
  2. Moduł testowy Configuation należy użyć BUILD_NATIVE_TEST regułę build więc numeru GTEST zależności są włączone automatycznie
  3. Napisz konfigurację testową. Zobacz proste i złożone opcje.
  4. Zbudować moduł testowy z mmm lub mma (w zależności czy jest to przyrostowe lub pełne build), np:

    make hwui_unit_tests -j
    
  5. Użyj ATEST aby uruchomić test lokalnie:

    atest hwui_unit_tests
    
    1. Możesz także dodawać argumenty do testów natywnych. Niektóre szczególnie użyteczne flagi są native-test-flag , która określa dodatkowe wartości flagi przejść do polecenia powłoki rodzimej test i native-test-timeout , który pozwala określić wartość limitu czasu testowego w mikrosekund.

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
      --module-arg test-name:native-test-timeout:60000
      
  6. Uruchom test z uprzężą testową Federacji Handlowej:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. Ręcznie zainstaluj i uruchom:

    1. Wypchnij wygenerowany testowy plik binarny na urządzenie:

      adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
        /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. Wykonaj test, wywołując test binarny na urządzeniu:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    To uruchamia natywny test. Można również dodać --help parametr do testu binarny, aby dowiedzieć się więcej na temat różnych sposobów na wykonanie testu Dostosuj. Wreszcie, zobacz numeru GTEST zaawansowanych instrukcji dla większej liczby parametrów oraz ich zastosowania.