Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

供應商測試套件(VTS)和基礎架構

Android 11供應商測試套件(VTS)在以下方面提供了廣泛的測試:

  • 核心
  • 硬件抽象層(HAL)

VTS在台式計算機上運行,並直接在連接的設備或仿真器上執行測試用例。與CTS相似,VTS是使用以下主要軟件組件的自動化測試套件。

  • VTS Trade Federation測試工具在您的主機上運行並管理測試執行。它提供的能力,配置分片在多個被測設備(DUT的)。您還可以使用“ 套件重試”功能僅重試失敗的故障,而不是整個測試套件,從而大大減少了重新運行時間。
  • 個別測試用例在DUT上執行。測試用例可以是gtest風格的測試,內核測試或用Java編寫的JUnit風格的測試。

測試類型

gtest風格的測試

VTS中的大多數測試都是檢查HAL實現的gtest風格測試。該測試用C ++編寫,並在設備上運行。典型的VTS gtest遍歷給定接口的每個實例,並對它運行所有測試用例。有關示例,請參考VtsHalHealthStorageV1_0TargetTest

Linux內核測試

  • Kselftest( external / linux-kselftest )是Linux內核存儲庫中tools/testing/selftests selftests包含的一組測試,其中23項包含在VTS上以在ARM上運行。

  • Linux測試項目( external / ltp )測試驗證了Linux內核的可靠性,健壯性和穩定性。

JUnit風格的測試

VTS中一小部分由主機驅動的測試是JUnit風格的測試,例如KernelApiSysfsTest 。 Java測試被實現為BaseHostJUnit4Test ,它與測試設備相關聯,並且可以運行shell命令來執行驗證。

獨立的Python3測試

一些VTS測試,例如vts_treble_sys_prop_test是用Python3編寫的。基於Python的測試以unittest.TestCase形式實現,每個測試用例均可通過shell命令與設備交互。