जार (जावा) होस्ट टेस्ट

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

आपके सॉफ़्टवेयर का संपूर्ण कोड कवरेज प्रदान करने के लिए JAR होस्ट परीक्षण लागू किए जाने चाहिए। स्थानीय इकाई परीक्षण बनाने के लिए निर्देशों का पालन करें। किसी विशिष्ट फ़ंक्शन को मान्य करने के लिए छोटी इकाई परीक्षण लिखें और इससे अधिक कुछ नहीं।

उदाहरण

निम्नलिखित ब्लूप्रिंट फ़ाइल आपकी आवश्यकताओं को कॉपी और अनुकूलित करने के लिए एक सरल हैलो वर्ल्ड JAR होस्ट परीक्षण उदाहरण प्रदान करती है: platform_testing/tests/example/jarhosttest/Android.bp

यह यहां पाए गए वास्तविक परीक्षण कोड से मेल खाता है: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

ब्लूप्रिंट फ़ाइल का एक स्नैपशॉट सुविधा के लिए यहां शामिल है:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

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

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

शुरुआत में java_test_host घोषणा इंगित करती है कि यह एक JAR होस्ट परीक्षण है। इसमें इसके उपयोग का एक उदाहरण देखें: Frameworks/base/tools/powermodel/Android.bp

समायोजन

निम्नलिखित सेटिंग्स के स्पष्टीकरण के लिए नीचे देखें:

  • name सेटिंग आवश्यक है जब java_test_host मॉड्यूल प्रकार निर्दिष्ट किया जाता है (ब्लॉक की शुरुआत में)। यह सेटिंग आपके मॉड्यूल को एक नाम देती है, और परिणामी JAR का एक ही नाम और एक .jar प्रत्यय होता है। नीचे दिए गए उदाहरण में, परिणामी परीक्षण JAR को HelloWorldHostTest.jar नाम दिया गया है। इसके अलावा, यह सेटिंग आपके मॉड्यूल के लिए एक लक्ष्य लक्ष्य नाम भी परिभाषित करती है, ताकि आप अपने परीक्षण मॉड्यूल और उसकी सभी निर्भरताओं को बनाने के लिए make [options] <HelloWorldHostTest> का उपयोग कर सकें।

    name: "HelloWorldHostTest",
    
  • test_suites सेटिंग, ट्रेड फेडरेशन टेस्ट हार्नेस द्वारा परीक्षण को आसानी से खोजने योग्य बनाती है। अन्य परीक्षण सूट यहां जोड़े जा सकते हैं, जैसे सीटीएस, ताकि जेएआर मेजबान परीक्षण परीक्षण साझा किया जा सके।

    test_suites: ["general-tests"],
    
  • static_libs सेटिंग बिल्ड सिस्टम को नामित मॉड्यूल की सामग्री को वर्तमान मॉड्यूल के परिणामी एपीके में शामिल करने का निर्देश देती है। इसका अर्थ यह है कि प्रत्येक नामित मॉड्यूल से एक .jar फ़ाइल उत्पन्न करने की अपेक्षा की जाती है। मॉड्यूल की सामग्री का उपयोग संकलन समय के दौरान क्लासपाथ संदर्भों को हल करने के लिए किया जाता है और परिणामी एपीके में शामिल किया जाता है।

    static_libs: [
        "junit",
    ],