Google은 블랙 커뮤니티를위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 방법을보십시오.
이 페이지는 Cloud Translation API를 통해 번역되었습니다.
Switch to English

테스팅

프로젝트 테스팅

Google에서 공개 한 OpenThread는 여러 도구로 테스트되었습니다.

지속적인 통합

트래비스 CI 코덱 코브

OpenThread는 CI (Continuous Integration)를 위해 Travis CI 를 사용하고 코드 범위는 Codecov 를 사용합니다.

CI는 GNU Arm Embedded 툴체인을 사용하는 모든 예제 플랫폼과 GCC, Clang 및 Android를 사용하여 시뮬레이션 된 예제에 대한 빌드 확인을 수행합니다. 또한 x86, 플랫폼 아키텍처 및 스레드 장치 구성에 대해 빌드 및 테스트합니다. 특정 빌드 대상에 대한 자세한 내용은 OpenThread Travis 빌드 매트릭스를 참조하십시오.

또한 CI는 다음을 수행합니다.

  1. clang-format 사용한 코드 스타일 검사
  2. 단위 테스트
  3. CLI, wpantund ( toranj ) 및 Pyspinel에 대한 기능 테스트

OSS- 퍼지

OpenThread는 OSS-Fuzz로 퍼즈 테스트를 거쳤습니다. 이 테스트 기술에서는 메모리 누수 또는 충돌과 같은 문제를 찾기 위해 유효하지 않은 임의 입력이 고주파 및 볼륨으로 소프트웨어에 제출됩니다.

현재 퍼징 빌드 대상에 대해서는 OpenThread 저장소를 참조하십시오.

제품 테스트

다음 도구를 사용하여 자체 OpenThread 제품을 테스트하십시오.

와이어 샤크

Wireshark는 실제 및 가상 네트워크 인터페이스에서 실행되는 트래픽을위한 오픈 소스 네트워크 프로토콜 분석기입니다. 스레드 프로토콜은 Wireshark 2.4.0 이상 에서 지원됩니다. 이 도구에 대한 설명서 및 다운로드는 wireshark.org 에서 찾을 수 있습니다.

Wireshark에서 스레드가 지원되는 방법에 대한 자세한 내용은 Pyspinel을 통한 패킷 스니핑을 참조하십시오.

파이피 넬

Pyspinel은 Spinel 프로토콜 용 Python CLI이며 OpenThread NCP 를 구성하고 관리하는 데 사용됩니다. 이 CLI는 주로 CI 테스트를 대상으로하지만 OpenThread NCP 인스턴스를 테스트하고 테스트하는 데 수동으로 사용할 수 있습니다.

Pyspinel은 다음 용도로 사용됩니다.

  • 지속적인 통합을 위해 시뮬레이션 된 NCP 테스트를 추가하십시오.
  • 하드웨어에서 NCP 펌웨어를 실행하는 테스트 베드 테스트를 자동화합니다.
  • OpenThread의 NCP 빌드를 디버그하십시오.
  • OpenThread NCP를 패킷 스니퍼로 변환하십시오.

자세한 정보는 Pyspinel 저장소의 README 를 참조하십시오.