Kể từ ngày 27 tháng 3 năm 2025, bạn nên sử dụng android-latest-release thay vì aosp-main để xây dựng và đóng góp cho AOSP. Để biết thêm thông tin, hãy xem phần Thay đổi đối với AOSP.
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Bộ kiểm thử tính tương thích (CTS) là một bộ kiểm thử miễn phí, cấp thương mại và các công cụ dùng để giúp đảm bảo rằng thiết bị của bạn tương thích với Android. CTS được thiết kế để tích hợp vào quy trình làm việc hằng ngày của bạn, chẳng hạn như thông qua một hệ thống xây dựng liên tục. CTS chạy trên máy tính và thực thi các chương trình kiểm thử trực tiếp trên các thiết bị đính kèm hoặc trên trình mô phỏng. Để biết thông tin tổng quan về khả năng tương thích với Android, hãy xem bài viết Tổng quan về chương trình tương thích của Android.
Hình 1. Kiểm thử tự động CTS.
Hình 1 cho thấy quy trình thực thi các kiểm thử tự động CTS:
Tải và cài đặt CTS. Bước này cũng bao gồm việc thiết lập môi trường thử nghiệm, máy trạm thử nghiệm và thiết bị bạn đang thử nghiệm hoặc thiết bị đang được thử nghiệm (DUT)
Chạy các bài kiểm thử tự động của CTS.
Lưu trữ và xem xét kết quả.
Khắc phục sự cố và chạy lại các bài kiểm thử.
Sử dụng CTS để sớm phát hiện các vấn đề không tương thích và đảm bảo rằng các hoạt động triển khai Android của bạn vẫn tương thích trong suốt quá trình phát triển.
Thành phần CTS
CTS chứa các thành phần chính sau:
Liên minh thương mại
Khung và bộ kiểm thử cho phép thực thi các chương trình kiểm thử một cách tự động.
Kiểm thử tự động CTS
Các chương trình kiểm thử sử dụng khung Trade Federation và có thể chạy bằng cách sử dụng bộ kiểm thử Trade Federation.
Kiểm thử Trình xác minh CTS (CTS-V)
Các chương trình kiểm thử phải được chạy theo cách thủ công.
Ứng dụng Trình xác minh CTS (CTS-V)
Ứng dụng dùng để tiến hành kiểm thử CTS-V và thu thập kết quả kiểm thử CTS-V.
Trường hợp kiểm thử
Một kiểm thử riêng lẻ được thực thi trên DUT. Các trường hợp kiểm thử tự động được viết bằng Java dưới dạng kiểm thử JUnit và đóng gói các tệp APK Android để chạy trên thiết bị mục tiêu.
Trường hợp kiểm thử có thể là kiểm thử đơn vị hoặc kiểm thử chức năng. Kiểm thử đơn vị kiểm thử các đơn vị mã nguyên tử trong nền tảng Android. Ví dụ: một kiểm thử đơn vị có thể kiểm thử một lớp Android duy nhất.
Kiểm thử chức năng thực hiện việc kết hợp các phương thức và lớp dùng cho một trường hợp sử dụng cụ thể.
Cấu hình kiểm thử
Một nhóm kiểm thử tự động cụ thể chạy trên DUT. Cấu hình kiểm thử là các tệp XML nằm trong WORKING_DIRECTORY/cts/tools/cts-tradefed/res/config.
Có các cấu hình kiểm thử chứa tất cả các trường hợp kiểm thử tự động và các cấu hình kiểm thử chứa một tập hợp con các trường hợp kiểm thử.
Thử nghiệm mô-đun
Cấu hình kiểm thử bao gồm một tập hợp các trường hợp kiểm thử cho cùng một khu vực tính năng.
Kế hoạch kiểm thử
Cấu hình kiểm thử bao gồm một tập hợp các mô-đun kiểm thử.
Mức độ bao phủ kiểm thử
Các trường hợp kiểm thử bao gồm các khía cạnh sau để đảm bảo khả năng tương thích:
Khu vực
Mô tả
Kiểm thử chữ ký
Đối với mỗi bản phát hành Android, có các tệp XML mô tả chữ ký của tất cả API công khai có trong bản phát hành. CTS chứa một tiện ích để kiểm tra các chữ ký API đó với các API có trên thiết bị. Kết quả kiểm tra chữ ký được ghi lại trong tệp XML kết quả kiểm thử.
Kiểm thử API nền tảng
Kiểm thử các API nền tảng (thư viện cốt lõi và Khung ứng dụng Android) như được ghi lại trong Class Index (Chỉ mục lớp) của SDK để đảm bảo API chính xác, bao gồm cả lớp, thuộc tính và chữ ký phương thức chính xác, hành vi phương thức chính xác và kiểm thử âm để đảm bảo hành vi dự kiến cho việc xử lý tham số không chính xác.
Kiểm thử Dalvik
Các bài kiểm thử này tập trung vào việc kiểm thử định dạng tệp thực thi Dalvik.
Mô hình dữ liệu nền tảng
CTS kiểm thử mô hình dữ liệu nền tảng cốt lõi được hiển thị cho các nhà phát triển ứng dụng thông qua nhà cung cấp nội dung, như được ghi lại trong gói SDK android.provider (bao gồm danh bạ, trình duyệt và chế độ cài đặt)
Ý định của nền tảng
CTS kiểm thử các ý định cốt lõi của nền tảng, như được ghi nhận trong
Ý định phổ biến của SDK.
Quyền trên nền tảng
CTS kiểm tra các quyền cốt lõi của nền tảng, như được ghi lại trong SDK Manifest.permission.
Tài nguyên của nền tảng
CTS kiểm thử việc xử lý chính xác các loại tài nguyên nền tảng cốt lõi, như được ghi lại trong phần
Tổng quan về loại tài nguyên của SDK. Các bài kiểm thử CTS bao gồm các bài kiểm thử cho các giá trị đơn giản, đối tượng có thể vẽ, 9-patch, ảnh động, bố cục, kiểu và giao diện cũng như tải tài nguyên thay thế.
Các bước tiếp theo
Sau khi đọc tài liệu này, hãy tiếp tục Thiết lập CTS.
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 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)."]]