Google is committed to advancing racial equity for Black communities. See how.
หน้านี้ได้รับการแปลโดย Cloud Translation API
Switch to English

การทดสอบ

การทดสอบโครงการ

OpenThread ที่เปิดตัวโดย Google ได้รับการทดสอบโดยเครื่องมือต่างๆ

บูรณาการอย่างต่อเนื่อง

Travis CI Codecov

OpenThread ใช้ Travis CI สำหรับการรวมแบบต่อเนื่อง (CI) และ Codecov สำหรับการครอบคลุมโค้ด

CI ทำการตรวจสอบการสร้างสำหรับแพลตฟอร์มตัวอย่างทั้งหมดโดยใช้ GNU Arm Embedded Toolchain และสำหรับตัวอย่างจำลองโดยใช้ GCC, Clang และ Android นอกจากนี้ยังสร้างและทดสอบกับ x86 สถาปัตยกรรมแพลตฟอร์มและการกำหนดค่าอุปกรณ์เธรด สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเป้าหมายการสร้างที่เฉพาะเจาะจงโปรดดู เมทริกซ์การสร้าง OpenThread Travis

นอกจากนี้ CI ยังดำเนินการ:

  1. การตรวจสอบรูปแบบรหัส โดยใช้ clang-format
  2. การทดสอบหน่วย
  3. การทดสอบการทำงาน กับ CLI, wpantund (พร้อม toranj ) และ Pyspinel

OSS-Fuzz

OpenThread เป็น fuzz ที่ทดสอบด้วย OSS-Fuzz ในเทคนิคการทดสอบนี้จะมีการส่งอินพุตที่ไม่ถูกต้องและแบบสุ่มด้วยความถี่และปริมาณสูงไปยังซอฟต์แวร์เพื่อค้นหาปัญหาต่างๆเช่นหน่วยความจำรั่วหรือล่ม

ดูที่เก็บ OpenThread สำหรับ เป้าหมายการสร้าง ที่คลุมเครือใน ปัจจุบัน

การทดสอบผลิตภัณฑ์

ใช้เครื่องมือต่อไปนี้เพื่อทดสอบผลิตภัณฑ์ OpenThread ของคุณเอง

Wireshark

Wireshark คือตัววิเคราะห์โปรโตคอลเครือข่ายแบบโอเพนซอร์สสำหรับการรับส่งข้อมูลที่ทำงานบนอินเทอร์เฟซเครือข่ายทางกายภาพและเสมือน รองรับโปรโตคอล Thread ใน Wireshark 2.4.0 และใหม่กว่า สามารถดูเอกสารและดาวน์โหลดสำหรับเครื่องมือนี้ได้ที่ wirehark.org

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีรองรับเธรดใน Wireshark โปรดดู Packet sniffing ด้วย Pyspinel

Pyspinel

Pyspinel เป็น Python CLI สำหรับ โปรโตคอล Spinel ซึ่งใช้ในการกำหนดค่าและจัดการ OpenThread NCPs CLI นี้มีเป้าหมายหลักเพื่อการทดสอบ CI แต่สามารถใช้ด้วยตนเองเพื่อทดลองและทดสอบอินสแตนซ์ OpenThread NCP

Pyspinel ใช้เพื่อ:

  • เพิ่มการทดสอบ NCP จำลองเพื่อการผสานรวมอย่างต่อเนื่อง
  • ทำการทดสอบ testbeds ที่รันเฟิร์มแวร์ NCP บนฮาร์ดแวร์โดยอัตโนมัติ
  • ดีบัก NCP สร้าง OpenThread
  • แปลง OpenThread NCP เป็น packet sniffer

สำหรับข้อมูลเพิ่มเติมโปรดดู README ในที่เก็บ Pyspinel