GoogleTest

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

GoogleTest (GTest หรือบางครั้งเรียกว่า "การทดสอบแบบเนทีฟ") สำหรับแพลตฟอร์มโดยทั่วไปจะเข้าถึง HAL ระดับล่างหรือดำเนินการ IPC ดิบกับบริการต่างๆ ของระบบ ด้วยเหตุนี้ วิธีการทดสอบจึงมักจะควบคู่ไปกับบริการภายใต้การทดสอบ

หากต้องการผสานรวมกับโครงสร้างพื้นฐานการทดสอบอย่างต่อเนื่อง ให้สร้าง GTests ของคุณโดยใช้เฟรมเวิ ร์ก GTest

ตัวอย่าง

นี่คือตัวอย่างบางส่วนของ GTest ในแหล่งที่มาของแพลตฟอร์ม:

สรุปขั้นตอน

  1. ทำตาม ตัวอย่างการตั้งค่าโมดูล GTest
  2. หากต้องการรวมการพึ่งพา GTest โดยอัตโนมัติ ให้ใช้กฎ BUILD_NATIVE_TEST ในการกำหนดค่าโมดูลทดสอบของคุณ
  3. เขียนการกำหนดค่าการทดสอบตามตัวอย่างสำหรับตัวเลือกที่ ง่าย และ ซับซ้อน
  4. สร้างโมดูลทดสอบด้วย mmm สำหรับบิลด์ที่เพิ่มขึ้น หรือ mma สำหรับบิลด์แบบเต็ม:

    make hwui_unit_tests -j
    
  5. เรียกใช้การทดสอบในเครื่องโดยใช้ Atest :

    atest hwui_unit_tests
    

คุณยังสามารถเพิ่มอาร์กิวเมนต์ให้กับ GTests ของคุณได้ ต่อไปนี้เป็นอาร์กิวเมนต์ที่มีประโยชน์อย่างยิ่ง: * native-test-flag ระบุค่าแฟล็กเพิ่มเติมเพื่อส่งผ่านไปยังคำสั่ง GTest เชลล์ * native-test-timeout ระบุค่าการหมดเวลาการทดสอบเป็นไมโครวินาที

โค้ดตัวอย่างต่อไปนี้ใช้อาร์กิวเมนต์ทั้งสองนี้:

   <pre class="devsite-terminal devsite-click-to-copy">
   atest <var>test-name</var> -- --module-arg <var>test-name</var>:native-test-flag:"\"<var>argument1</var> <var>argument2</var>\"" \
   --module-arg <var>test-name</var>:native-test-timeout:60000
   </pre>
  1. ทำการทดสอบด้วยสายรัดทดสอบของสหพันธ์การค้า:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  2. ติดตั้งและเรียกใช้ด้วยตนเอง:

    1. พุชไบนารีทดสอบที่สร้างขึ้นไปยังอุปกรณ์ของคุณ:

      adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
        /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. เรียกใช้ GTest และดำเนินการทดสอบโดยเรียกใช้ไบนารีการทดสอบบนอุปกรณ์:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการปรับแต่งการดำเนินการทดสอบ ให้เพิ่มพารามิเตอร์ --help ในไบนารีการทดสอบของคุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์ โปรดดู คู่มือขั้นสูงของ GTest