Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

آزمایش کردن

آزمایش پروژه

OpenThread منتشر شده توسط گوگل توسط تعدادی ابزار آزمایش می شود.

ادغام مداوم

Travis CIکدکف

OpenThread از Travis CI برای ادغام مداوم (CI) و Codecov برای پوشش کد استفاده می کند.

CI برای همه سیستم عامل های نمونه با استفاده از GNU Arm Embedded Toolchain و برای مثال شبیه سازی شده با استفاده از GCC ، Clang و Android بررسی ساخت را انجام می دهد. همچنین این نرم افزار بر روی x86 ، ساختار پلت فرم و پیکربندی دستگاه Thread ساخته و آزمایش می شود. برای کسب اطلاعات بیشتر در مورد اهداف ساخت خاص ، به ماتریس ساخت OpenThread Travis مراجعه کنید .

علاوه بر این ، CI انجام می دهد:

  1. بررسی سبک کد با استفاده clang-format
  2. آزمایشات واحد
  3. آزمونهای عملکردی برابر CLI، wpantund (با toranj )، و Pyspinel

OSS-Fuzz

OpenThread فاز با OSS-Fuzz تست شده است. در این روش تست ، ورودی های نامعتبر و تصادفی با فرکانس و حجم بالا به نرم افزار ارسال می شوند تا مواردی مانند نشت حافظه یا خرابی را پیدا کنند.

برای ساخت اهداف مبهم فعلی به مخزن OpenThread مراجعه کنید.

تست محصول

برای آزمایش محصول OpenThread خود از ابزارهای زیر استفاده کنید.

Wireshark

Wireshark یک تحلیلگر پروتکل شبکه منبع باز برای ایجاد ترافیک در رابط های فیزیکی و مجازی شبکه است. پروتکل Thread در Wireshark 2.4.0 به بعد پشتیبانی می شود. اسناد و مدارک و بارگیری های این ابزار را می توان در wireshark.org یافت.

برای اطلاعات بیشتر در مورد نحوه پشتیبانی از Thread در Wireshark ، به Packet sniffing with Pyspinel مراجعه کنید .

پیس پینل

Pyspinel یک Python CLI برای پروتکل Spinel است که برای پیکربندی و مدیریت OpenPhread NCP یا RCP استفاده می شود . این CLI در درجه اول آزمایش های CI است ، اما می تواند به صورت دستی برای آزمایش و آزمایش نمونه های Open-Thread Co-Processor استفاده شود.

Pyspinel استفاده می شود برای:

  • آزمایش هم پردازنده شبیه سازی شده را به ادغام مداوم اضافه کنید.
  • آزمایش خودکار آزمایشگاه های دارای سیستم عامل Co-Processor روی سخت افزار را به صورت خودکار انجام دهید.
  • اشکال زدایی سازنده های OpenThread را با پردازشگر مشترک انجام می دهد.
  • یک پردازشگر OpenThread را به یک بوگیر بسته تبدیل کنید.

برای اطلاعات بیشتر ، به README در مخزن Pyspinel مراجعه کنید.