Kiểm thử máy chủ JAR

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

Ví dụ

Tệp Blueprint sau đây cung cấp một ví dụ đơn giản về kiểm thử máy chủ JAR Hello World để sao chép và điều chỉnh theo 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:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

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

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

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

Cài đặt

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

  • Bạn phải đặt name khi chỉ định loại mô-đun java_test_host (ở đầu khối). Chế độ cài đặt này đặt tên cho mô-đun và tệp JAR thu được sẽ 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 có tên là HelloWorldHostTest.jar. Ngoài ra, chế độ cài đặt này cũng xác định tên mục tiêu tạo cho mô-đun của bạn, nhờ đó bạn có thể sử dụng make [options] <HelloWorldHostTest> để tạo mô-đun kiểm thử và tất cả các phần phụ thuộc của mô-đun đó.

    name: "HelloWorldHostTest",
    
  • Chế độ cài đặt test_suites giúp bộ kiểm thử của Liên minh thương mại dễ dàng phát hiện được kiểm thử. 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ẻ 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 đã đặt tên vào tệp APK thu được 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à được kết hợp vào APK thu được.

    static_libs: [
        "junit",
    ],