사용자 지정 테스트 도구 모음 디버그 및 실행 - AWS IoT Greengrass

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

사용자 지정 테스트 도구 모음 디버그 및 실행

필요한 구성이 설정되면 IDT에서 테스트 제품군을 실행할 수 있습니다. 전체 테스트 도구 모음의 런타임은 하드웨어와 테스트 도구 모음의 구성에 따라 달라집니다. 참조를 위해, Raspberry Pi 3B에서 전체 AWS IoT Greengrass 자격 테스트 도구 모음을 완료하는 데 약 30분이 걸립니다.

테스트 도구 모음을 작성할 때 IDT를 사용하여 테스트 도구 모음을 디버그 모드에서 실행하여 코드를 실행하기 전에 검사하거나 테스트 실행기에 제공할 수 있습니다.

IDT를 디버그 모드에서 실행합니다.

테스트 제품군은 디바이스와 상호 작용하고, 컨텍스트를 제공하고, 결과를 받기 위해 IDT를 사용하기 때문에 IDT 상호 작용 없이 IDE에서 테스트 제품군을 간단히 디버깅할 수는 없습니다. 이를 위해 IDT CLI는 IDT를 디버그 모드에서 실행할 수 있는 debug-test-suite 명령을 제공합니다. 다음 명령을 실행하여 debug-test-suite에 대해 사용 가능한 옵션을 봅니다.

devicetester_[linux | mac | win_x86-64] debug-test-suite -h

IDT를 디버그 모드에서 실행할 때 IDT는 실제로 테스트 제품군을 시작하거나 테스트 오케스트레이터를 실행하지 않습니다. 대신 IDE와 상호 작용하여 IDE에서 실행 중인 테스트 제품군의 요청에 응답하고 콘솔에 로그를 인쇄합니다. IDT는 타임아웃이 발생하지 않으며 수동으로 중단될 때까지 종료를 기다립니다. 디버그 모드에서도 IDT는 테스트 오케스트레이터를 실행하지 않으며 보고서 파일을 생성하지 않습니다. 테스트 도구 모음을 디버깅하려면 IDE를 사용하여 IDT가 일반적으로 구성 JSON 파일에서 얻는 일부 정보를 제공해야 합니다. 다음 정보를 제공하는지 확인합니다.

  • 각 테스트의 환경 변수 및 인수. IDT는 test.json 또는 suite.json에서 이 정보를 읽지 않습니다.

  • 리소스 디바이스를 선택하기 위한 인수. IDT는 test.json에서 이 정보를 읽지 않습니다.

테스트 제품군을 디버깅하려면 다음 단계를 완료합니다.

  1. 테스트 제품군을 실행하는 데 필요한 설정 구성 파일을 생성합니다. 예를 들어, 테스트 제품군에 device.json, resource.json, 및 user data.json이(가) 필요한 경우, 필요에 따라 모두 구성해야 합니다.

  2. 다음 명령을 실행하여 IDT를 디버그 모드로 설정하고 테스트를 실행하는 데 필요한 디바이스를 선택합니다.

    devicetester_[linux | mac | win_x86-64] debug-test-suite [options]

    이 명령을 실행하면 IDT는 테스트 제품군의 요청을 기다린 다음 요청에 응답합니다. 또한 IDT는 IDT 클라이언트 SDK의 사례 프로세스에 필요한 환경 변수를 생성합니다.

  3. IDE에서 run 또는 debug 구성을 사용하여 다음을 수행합니다.

    1. IDT에서 생성한 환경 변수의 값을 설정합니다.

    2. test.jsonsuite.json 파일에 지정한 모든 환경 변수 또는 인수의 값을 설정합니다.

    3. 필요에 따라 중단점을 설정합니다.

  4. IDE에서 테스트 제품군을 실행합니다.

    필요한 횟수만큼 테스트 제품군을 디버깅하고 다시 실행할 수 있습니다. 디버그 모드에서는 IDT가 타임아웃되지 않습니다.

  5. 디버깅을 완료한 후 IDT를 중단하여 디버그 모드를 종료하십시오.

테스트를 실행하기 위한 IDT CLI 명령

다음 섹션에서는 IDT CLI 명령에 대해 설명합니다.

IDT v4.0.0
help

지정된 명령에 대한 정보를 나열합니다.

list-groups

지정된 테스트 제품군에 있는 그룹을 나열합니다.

list-suites

사용 가능한 테스트 제품군을 나열합니다.

list-supported-products

IDT 버전에 대해 지원되는 제품(이 경우, AWS IoT Greengrass 버전)과 현재 IDT 버전에 대한 AWS IoT Greengrass 자격 테스트 제품군 버전을 나열합니다.

list-test-cases

주어진 테스트 그룹의 테스트 사례를 나열합니다. 다음 옵션이 지원됩니다.

  • group-id. 검색할 테스트 그룹입니다. 이 옵션은 필수이며 단일 그룹을 지정해야 합니다.

run-suite

디바이스의 풀에 대해 테스트 제품군을 실행합니다. 다음은 몇 가지 일반적으로 사용되는 옵션입니다.

  • suite-id. 실행할 테스트 제품군 버전입니다. 지정하지 않으면 IDT는 tests 폴더의 최신 버전을 사용합니다.

  • group-id. 실행할 테스트 그룹(쉼표로 구분된 목록)입니다. 지정하지 않으면 IDT는 테스트 제품군의 모든 테스트 그룹을 실행합니다.

  • test-id. 실행할 테스트 사례(쉼표로 구분된 목록)입니다. 지정된 경우, group-id은(는) 단일 그룹을 지정해야 합니다.

  • pool-id. 테스트할 디바이스 풀입니다. device.json 파일에 여러 디바이스 풀이 정의되어 있는 경우, 테스트 실행기는 하나의 풀을 지정해야 합니다.

  • timeout-multiplier. 사용자 정의 승수를 사용하여 테스트에 대해 test.json 파일에 지정된 테스트 실행 제한 시간을 수정하도록 IDT를 구성합니다.

  • stop-on-first-failure. 첫 번째 실패 시 실행을 중지하도록 IDT를 구성합니다. 이 옵션은 지정된 테스트 그룹을 디버깅하는 데 group-id와(과) 함께 사용해야 합니다.

  • userdata. 테스트 제품군을 실행하는 데 필요한 사용자 데이터 정보가 포함된 파일을 설정합니다. 이는 테스트 제품군 suite.json 파일에서 userdataRequired이(가) true로 설정된 경우에만 필요합니다.

run-suite 옵션에 대한 자세한 내용은 다음 help 옵션을 사용하십시오.

devicetester_[linux | mac | win_x86-64] run-suite -h
debug-test-suite

테스트 제품군을 디버그 모드에서 실행합니다. 자세한 내용은 IDT를 디버그 모드에서 실행합니다.을(를) 참조하세요.