Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release вместо aosp-main для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Compatibility Test Suite (CTS) — это бесплатный коммерческий тестовый набор и инструменты, которые помогают убедиться, что ваши устройства совместимы с Android. CTS предназначен для интеграции в ваш ежедневный рабочий процесс, например, через систему непрерывной сборки. CTS работает на настольном компьютере и выполняет тесты непосредственно на подключенных устройствах или на эмуляторе. Обзор совместимости с Android см. в разделе Обзор программы совместимости Android .
Рисунок 1. Автоматизированное тестирование CTS.
На рисунке 1 показан процесс выполнения автоматизированных тестов CTS:
Загрузите и установите CTS. Этот шаг также включает в себя настройку тестовой среды, тестовой рабочей станции и тестируемого устройства или тестируемого устройства (DUT)
Запустите автоматизированные тесты CTS.
Сохраните и просмотрите результаты.
Устраните неполадки и повторите тесты.
Используйте CTS, чтобы выявить несовместимости на ранних этапах и гарантировать, что ваши реализации Android останутся совместимыми на протяжении всего процесса разработки.
Компоненты CTS
CTS содержит следующие основные компоненты:
Торговая федерация
Тестовая среда и фреймворк позволяют автоматизировать выполнение тестов.
CTS автоматизированные тесты
Тесты, использующие фреймворк Trade Federation, можно запускать с помощью тестового инструментария Trade Federation.
Тесты CTS Verifier (CTS-V)
Тесты, которые необходимо запускать вручную.
Приложение CTS Verifier (CTS-V)
Приложение, используемое для проведения тестов CTS-V и сбора результатов тестов CTS-V.
Тестовый случай
Отдельный тест, выполняемый на DUT. Автоматизированные тестовые случаи пишутся на Java как тесты JUnit и упакованные файлы Android APK для запуска на целевом устройстве.
Тестовые случаи могут быть модульными тестами или функциональными тестами . Модульный тест тестирует атомарные единицы кода в платформе Android. Например, модульный тест может тестировать один класс Android.
Функциональный тест проверяет комбинацию методов и классов, используемых для конкретного варианта использования.
Тестовая конфигурация
Определенный набор автоматизированных тестов, которые запускаются на DUT. Конфигурации тестов — это XML-файлы, расположенные в WORKING_DIRECTORY /cts/tools/cts-tradefed/res/config . Существуют конфигурации тестов, которые содержат все автоматизированные тестовые случаи, и конфигурации тестов, которые содержат подмножество тестовых случаев.
Тестовый модуль
Тестовая конфигурация, состоящая из набора тестовых случаев для одной и той же функциональной области.
План испытаний
Тестовая конфигурация, состоящая из набора тестовых модулей.
Тестовое покрытие
Для обеспечения совместимости тестовые случаи охватывают следующие области:
Область
Описание
Тесты подписи
Для каждого выпуска Android существуют XML-файлы, описывающие подписи всех публичных API, содержащихся в выпуске. CTS содержит утилиту для проверки этих подписей API по API, доступным на устройстве. Результаты проверки подписей записываются в XML-файл результатов теста.
Тесты API платформы
Протестируйте API-интерфейсы платформы (основные библиотеки и Android Application Framework), как описано в индексе классов SDK, чтобы убедиться в корректности API, включая корректные сигнатуры классов, атрибутов и методов, корректное поведение методов и отрицательные тесты, чтобы убедиться в ожидаемом поведении при неправильной обработке параметров.
Тесты Дальвика
Тесты сосредоточены на тестировании формата исполняемого файла Dalvik.
Модель данных платформы
CTS тестирует основную модель данных платформы, предоставляемую разработчикам приложений через поставщиков контента, как описано в пакете SDK android.provider (включая контакты, браузеры и настройки).
Намерения платформы
CTS тестирует основные намерения платформы, как описано в общих намерениях SDK.
Разрешения платформы
CTS проверяет основные разрешения платформы, как описано в SDK Manifest.permission .
Ресурсы платформы
Тесты CTS проверяют правильность обработки основных типов ресурсов платформы, как описано в обзоре типов ресурсов SDK. Тесты CTS включают тесты для простых значений, рисунков, nine-patch, анимаций, макетов, стилей и тем, а также загрузку альтернативных ресурсов.
Что дальше?
После прочтения этого документа перейдите к настройке CTS .
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# The Compatibility Test Suite (CTS) overview\n\n*Compatibility Test Suite (CTS)* is a free, commercial-grade test suite and\ntools used to help ensure that your devices are Android compatible. CTS is\nintended to be integrated into your daily workflow, such as through a\ncontinuous build system. CTS runs on a desktop machine and executes tests\ndirectly on attached devices or on an emulator. For an overview of Android compatibility, see [Android compatibility program overview](/docs/compatibility).\n\n**Figure 1.** CTS automated testing.\n\nFigure 1 shows the process of executing CTS automated tests:\n\n1. Download and install CTS. This step also involves setting up the test environment, the testing workstation, and the device you are testing or *device under test (DUT)*\n2. Run CTS automated tests.\n3. Store and review the results.\n4. Troubleshoot issues and rerun tests.\n\nUse CTS to reveal incompatibilities early, and to ensure that your Android\nimplementations remain compatible throughout the development process.\n\nCTS components\n--------------\n\nCTS contains the following major components:\n\n*Trade Federation*\n: A test harness and framework allow for the automated execution of tests.\n\n*CTS automated tests*\n: Tests that use the Trade Federation framework and can be run using the Trade\n Federation test harness.\n\n*CTS Verifier (CTS-V) tests*\n: Tests that must be run manually.\n\n*CTS Verifier (CTS-V) app*\n: An app used to conduct CTS-V tests and collect CTS-V test results.\n\n*Test case*\n\n: An individual test executed on the DUT. Automated test cases are\n written in Java as JUnit tests and packaged Android APK files to run on the\n device target.\n\n Test cases can be *unit tests* or *functional tests*. A unit test tests atomic\n units of code within the Android platform. For example, a unit test might test\n a single Android class.\n\n A functional test exercises a combination of methods and classes used for a\n specific use case.\n\n*Test configuration*\n\n: A specific set of automated tests that are run on the\n DUT. Test configurations are XML files located in\n \u003cvar translate=\"no\"\u003eWORKING_DIRECTORY\u003c/var\u003e`/cts/tools/cts-tradefed/res/config`.\n There are test configurations that contains all automated test cases and test\n configurations that contain a subset of test cases.\n\n*Test module*\n\n: A test configuration consisting of a collection of test cases for the same\n feature area.\n\n*Test plan*\n\n: A test configuration consisting of a collection of test modules.\n\n| **Note:** The Android Open Source Project accepts contributions to improve CTS just as for any other component. Improving the coverage and quality of CTS tests is one of the best ways to contribute to Android. To make contributions to CTS, follow the same process in [Submit code changes](/docs/setup/contribute/submit-patches).\n\nTest coverage\n-------------\n\nTest cases cover the following areas to ensure compatibility:\n\n| Area | Description |\n|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Signature tests | For each Android release, there are XML files describing the signatures of all public APIs contained in the release. The CTS contains a utility to check those API signatures against the APIs available on the device. The results from signature checking are recorded in the test result XML file. |\n| Platform API tests | Test the platform (core libraries and Android Application Framework) APIs as documented in the SDK [Class Index](https://developer.android.com/reference/classes) to ensure API correctness, including correct class, attribute and method signatures, correct method behavior, and negative tests to ensure expected behavior for incorrect parameter handling. |\n| Dalvik tests | The tests focus on testing the Dalvik executable format. |\n| Platform data model | The CTS tests the core platform data model as exposed to application developers through content providers, as documented in the SDK [`android.provider`](https://developer.android.com/reference/android/provider/package-summary) package (including contacts, browsers, and settings) |\n| Platform intents | The CTS tests the core platform intents, as documented in the SDK [Common intents](https://developer.android.com/guide/appendix/g-app-intents). |\n| Platform permissions | The CTS tests the core platform permissions, as documented in the SDK [`Manifest.permission`](https://developer.android.com/reference/android/Manifest.permission). |\n| Platform resources | The CTS tests for correct handling of the core platform resource types, as documented in the SDK [Resource types overview](https://developer.android.com/guide/topics/resources/available-resources). The CTS tests include tests for simple values, drawables, nine-patch, animations, layouts, styles and themes, and loading alternate resources. |\n\nWhat's next\n-----------\n\nAfter reading this document, continue to [Set up CTS](/docs/compatibility/cts/setup)."]]