Kiểm thử máy chủ JAR

Cần triển khai chương trình kiểm thử máy chủ lưu trữ Java (JAR) để cung cấp mã hoàn chỉnh mức độ sử dụng của phần mềm. Làm theo hướng dẫn để Tạo đơn vị cục bộ kiểm thử. Viết mã kiểm thử đơn vị nhỏ để xác thực một chức năng cụ thể và không làm gì khác.

Ví dụ

Tệp Blueprint sau đây cung cấp ví dụ đơn giản về kiểm thử máy chủ JAR cho tệp Hello World để sao chép và điều chỉnh cho phù hợp với nhu cầu của bạn: platform_testing/tests/example/jarhosttest/Android.bp

Mã này tương ứng với mã kiểm thử thực tế tìm thấy tại: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

Để thuận tiện cho bạn, tôi có thể cung cấp ảnh chụp nhanh của tệp Blueprint ở đây:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

    srcs: ["test/**/*.java"],

    static_libs: [
        "junit",
        "mockito",
    ],
}

Phần khai báo java_test_host ở phần đầu cho biết đây là tệp JAR máy chủ lưu trữ. Xem ví dụ về cách sử dụng mã trong: frameworks/base/tools/powermodel/Android.bp

Cài đặt

Xem phần giải thích bên dưới về các chế độ cài đặt sau:

  • Chế độ cài đặt name là bắt buộc khi loại mô-đun java_test_host là được chỉ định (ở đầu khối). Chế độ cài đặt này đặt tên cho mô-đun và kết quả JAR thu được có cùng tên và hậu tố .jar. Trong ví dụ bên dưới,kết quả JAR kiểm thử được đặt tên là HelloWorldHostTest.jar. Trong Ngoài ra, chế độ cài đặt này cũng xác định tên mục tiêu make cho mô-đun của bạn, vì vậy, bạn có thể sử dụng make [options] <HelloWorldHostTest> để tạo kiểm thử mô-đun và tất cả các phần phụ thuộc của nó.

    name: "HelloWorldHostTest",
    
  • Chế độ cài đặt test_suites giúp thương hiệu dễ dàng phát hiện bài kiểm thử Khai thác kiểm thử liên kết. Bạn có thể thêm các bộ kiểm thử khác vào đây, chẳng hạn như CTS, để có thể chia sẻ chương trình kiểm thử máy chủ JAR.

    test_suites: ["general-tests"],
    
  • Chế độ cài đặt static_libs hướng dẫn hệ thống xây dựng kết hợp nội dung của các mô-đun được đặt tên vào APK kết quả của mô-đun hiện tại. Điều này có nghĩa là mỗi mô-đun được đặt tên dự kiến sẽ tạo một tệp .jar. Nội dung của mô-đun được dùng để phân giải các tham chiếu đường dẫn lớp trong thời gian biên dịch và tích hợp vào APK thu được.

    static_libs: [
        "junit",
    ],