Kiểm tra máy chủ JAR

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

Ví dụ

Tệp Blueprint sau đây cung cấp ví dụ thử nghiệm máy chủ Hello World JAR đơn giản để 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

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

Ảnh chụp nhanh của tệp Blueprint được đính kèm ở đây để thuận tiện:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

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

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

Khai báo java_test_host ở đầu chỉ ra rằng đây là thử nghiệm máy chủ JAR. Xem ví dụ về cách sử dụng nó trong: frameworks/base/tools/powermodel/Android.bp

Cài đặt

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

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

    name: "HelloWorldHostTest",
    
  • Cài đặt test_suites giúp dễ dàng phát hiện bài kiểm tra bằng khai thác kiểm tra của Liên đoàn Thương mại. Các bộ thử nghiệm khác có thể được thêm vào đây, chẳng hạn như CTS, để có thể chia sẻ thử nghiệm thử nghiệm máy chủ JAR.

    test_suites: ["general-tests"],
    
  • 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 ra một tệp .jar . Nội dung của mô-đun được sử dụng để giải quyết các tham chiếu đường dẫn lớp trong thời gian biên dịch và được tích hợp vào APK kết quả.

    static_libs: [
        "junit",
    ],