IDT 테스트 제품군 구성 파일 생성 - 무료RTOS

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

IDT 테스트 제품군 구성 파일 생성

이 섹션에서는 사용자 지정 테스트 제품군을 작성할 때 포함하는 구성 파일을 생성하는 형식을 설명합니다.

필수 구성 파일

suite.json

테스트 제품군 정보가 포함되어 있습니다. suite.json 구성을 참조하세요.

group.json

테스트 그룹에 대한 정보를 포함합니다. 테스트 도구 모음의 각 테스트 그룹에 대한 group.json 파일을 만들어야 합니다. group.json을 구성하십시오.을 참조하세요.

test.json

테스트 케이스에 대한 정보가 들어 있습니다. 테스트 도구 모음의 각 테스트 케이스에 대한 test.json 파일을 만들어야 합니다. test.json을 구성하십시오.을 참조하세요.

선택적 구성 파일

test_orchestrator.yaml 또는 state_machine.json

가 테스트 제품군을 실행할 때 테스트가 IDT 실행되는 방법을 정의합니다. SSe test_orchestrator.yaml 구성.

참고

IDT v4.5.2부터는 test_orchestrator.yaml 파일을 사용하여 테스트 워크플로를 정의합니다. 이전 버전의 에서는 state_machine.json 파일을 IDT사용합니다. 상태 시스템에 대한 자세한 내용은 IDT 상태 시스템 구성 섹션을 참조하세요.

userdata_schema.json

테스트 실행기가 설정 구성에 포함할 수 있는 userdata.json 파일의 스키마를 정의합니다. 이 userdata.json 파일은 테스트를 실행하는 데 필요하지만 device.json 파일에는 없는 추가 구성 정보에 사용됩니다. userdata_schema.json을 구성합니다.을 참조하세요.

구성 파일은 다음과 같이 <custom-test-suite-folder>에 저장됩니다.

<custom-test-suite-folder> └── suite ├── suite.json ├── test_orchestrator.yaml ├── userdata_schema.json ├── <test-group-folder> ├── group.json ├── <test-case-folder> └── test.json

suite.json 구성

suite.json 파일은 환경 변수를 설정하고 테스트 도구 모음을 실행하는 데 사용자 데이터가 필요한지 여부를 결정합니다. 다음 템플릿을 사용하여 <custom-test-suite-folder>/suite/suite.json 파일을 구성하십시오.

{ "id": "<suite-name>_<suite-version>", "title": "<suite-title>", "details": "<suite-details>", "userDataRequired": true | false, "environmentVariables": [ { "key": "<name>", "value": "<value>", }, ... { "key": "<name>", "value": "<value>", } ] }

여기 설명된 것처럼 값이 포함된 모든 필드는 필수입니다.

id

테스트 도구 모음의 고유한 사용자 정의 ID. id의 값은 suite.json 파일이 있는 테스트 도구 모음 폴더의 이름과 일치해야 합니다. 세트 이름과 세트 버전도 다음 요구 사항을 충족해야 합니다.

  • <suite-name>은(는) 언더바를 포함할 수 없습니다.

  • <suite-version>은(는) 다음과 같이 x.x.x(으)로 표시됩니다. 여기서 x은(는) 숫자입니다.

ID는 IDT생성된 테스트 보고서에 표시됩니다.

title

이 테스트 도구 모음에서 테스트 중인 제품 또는 기능의 사용자 정의 이름입니다. IDT CLI 테스트 러너의 이름은 에 표시됩니다.

details

테스트 도구 모음의 용도에 대한 짧은 설명입니다.

userDataRequired

테스트 실행기가 userdata.json 파일에 사용자 지정 정보를 포함해야 하는지 여부를 정의합니다. 이 값을 true으(로) 설정하는 경우, 테스트 도구 모음 폴더에도 userdata_schema.json 파일을 포함해야 합니다.

environmentVariables

선택 사항입니다. 이 테스트 도구 모음에 설정할 환경 변수 배열입니다.

environmentVariables.key

환경 변수의 이름입니다.

environmentVariables.value

환경 변수의 값입니다.

group.json을 구성하십시오.

group.json 파일은 테스트 그룹이 필수인지 옵션인지 여부를 정의합니다. 다음 템플릿을 사용하여 <custom-test-suite-folder>/suite/<test-group>/group.json 파일을 구성하십시오.

{ "id": "<group-id>", "title": "<group-title>", "details": "<group-details>", "optional": true | false, }

여기 설명된 것처럼 값이 포함된 모든 필드는 필수입니다.

id

테스트 그룹의 고유한 사용자 정의 ID입니다. id의 값은 group.json 파일이 있는 테스트 그룹 폴더의 이름과 일치해야 하며 밑줄(_)을 포함할 수 없습니다. ID는 IDT생성된 테스트 보고서에 사용됩니다.

title

테스트 그룹을 나타내는 서술형 이름입니다. IDT CLI 테스트 러너의 이름은 에 표시됩니다.

details

테스트 그룹의 용도에 대한 짧은 설명입니다.

optional

선택 사항입니다. true 가 필수 테스트 실행을 IDT 완료한 후 이 테스트 그룹을 선택적 그룹으로 표시하려면 로 설정합니다. 기본값은 false입니다.

test.json을 구성하십시오.

test.json 파일은 테스트 케이스 실행 파일 및 테스트 케이스에서 사용되는 환경 변수를 결정합니다. 테스트 케이스 실행 파일 생성에 대한 자세한 내용은 IDT 테스트 사례 실행 파일 생성 단원을 참조하세요.

다음 템플릿을 사용하여 <custom-test-suite-folder>/suite/<test-group>/<test-case>/test.json 파일을 구성하십시오.

{ "id": "<test-id>", "title": "<test-title>", "details": "<test-details>", "requireDUT": true | false, "requiredResources": [ { "name": "<resource-name>", "features": [ { "name": "<feature-name>", "version": "<feature-version>", "jobSlots": <job-slots> } ] } ], "execution": { "timeout": <timeout>, "mac": { "cmd": "/path/to/executable", "args": [ "<argument>" ], }, "linux": { "cmd": "/path/to/executable", "args": [ "<argument>" ], }, "win": { "cmd": "/path/to/executable", "args": [ "<argument>" ] } }, "environmentVariables": [ { "key": "<name>", "value": "<value>", } ] }

여기 설명된 것처럼 값이 포함된 모든 필드는 필수입니다.

id

테스트 사례의 고유한 사용자 정의 ID입니다. id의 값은 test.json 파일이 있는 테스트 사례 폴더의 이름과 일치해야 하며 밑줄(_)을 포함할 수 없습니다. ID는 IDT생성된 테스트 보고서에 사용됩니다.

title

테스트 케이스를 나타내는 서술형 이름입니다. IDT CLI 테스트 러너의 이름은 에 표시됩니다.

details

테스트 케이스의 용도에 대한 짧은 설명입니다.

requireDUT

선택 사항입니다. 이 테스트를 실행하는 데 기기가 필요한 경우, true(으)로 설정하고, 그렇지 않으면 false(으)로 설정합니다. 기본값은 true입니다. 테스트 실행기는 device.json 파일에서 테스트를 실행하는 데 사용할 기기를 구성합니다.

requiredResources

선택 사항입니다. 이 테스트를 실행하는 데 필요한 리소스 기기에 대한 정보를 제공하는 배열입니다.

requiredResources.name

이 테스트를 실행할 때 리소스 기기에 부여하는 고유한 이름입니다.

requiredResources.features

사용자 정의 리소스 장치 기능의 배열.

requiredResources.features.name

기능의 이름입니다. 이 장치를 사용하려는 장치 기능. 이 이름은 테스트 실행기가 resource.json 파일에 제공한 기능 이름과 일치합니다.

requiredResources.features.version

선택 사항입니다. 기능의 버전. 이 값은 테스트 실행기가 resource.json 파일에서 제공한 기능 버전과 일치합니다. 버전이 제공되지 않으면 기능이 확인되지 않습니다. 기능에 버전 번호가 필요하지 않은 경우, 이 필드를 비워 둡니다.

requiredResources.features.jobSlots

선택 사항입니다. 이 기능이 지원할 수 있는 동시 테스트 수입니다. 기본값은 1입니다. 개별 기능에 고유한 디바이스를 IDT 사용하려면 이 값을 로 설정하는 것이 좋습니다1.

execution.timeout

테스트 실행이 완료될 IDT 때까지 기다리는 시간(밀리초)입니다. 이 값 설정에 대한 자세한 내용을 알아보려면 IDT 테스트 사례 실행 파일 생성 섹션을 참조하세요.

execution.os

를 실행하는 호스트 컴퓨터의 운영 체제를 기반으로 실행할 테스트 사례 실행 파일입니다IDT. 지원되는 값은 linux, macwin입니다.

execution.os.cmd

지정된 운영 체제에서 실행하려는 테스트 케이스 실행 파일의 경로입니다. 이 위치는 시스템 경로에 있어야 합니다.

execution.os.args

선택 사항입니다. 테스트 케이스 실행 파일을 실행하기 위해 제공할 인수입니다.

environmentVariables

선택 사항입니다. 이 테스트 케이스에 설정된 환경 변수 배열입니다.

environmentVariables.key

환경 변수의 이름입니다.

environmentVariables.value

환경 변수의 값입니다.

참고

test.json 파일과 suite.json 파일에서 동일한 환경 변수를 지정하는 경우, test.json 파일의 값이 우선합니다.

test_orchestrator.yaml 구성

테스트 오케스트레이터는 테스트 제품군 실행 흐름을 제어하는 구조입니다. 테스트 제품군의 시작 상태를 결정하고, 사용자 정의 규칙을 기반으로 상태 전환을 관리하며, 최종 상태에 도달할 때까지 해당 상태를 계속 전환합니다.

테스트 제품군에 사용자 정의 테스트 오케스트레이터가 포함되어 있지 않은 경우 IDT는 사용자를 위해 테스트 오케스트레이터를 생성합니다.

기본 테스트 오케스트레이터는 다음 기능을 수행합니다.

  • 테스트 실행기에 전체 테스트 제품군 대신 특정 테스트 그룹을 선택하고 실행할 수 있는 기능을 제공합니다.

  • 특정 테스트 그룹을 선택하지 않은 경우, 테스트 제품군의 모든 테스트 그룹을 무작위 순서로 실행합니다.

  • 보고서를 생성하고 각 테스트 그룹 및 테스트 사례의 테스트 결과를 보여주는 콘솔 요약을 인쇄합니다.

IDT 테스트 오케스트레이터의 기능에 대한 자세한 내용은 섹션을 참조하세요IDT 테스트 오케스트레이터 구성.

userdata_schema.json을 구성합니다.

userdata_schema.json 파일은 테스트 실행기가 사용자 데이터를 제공하는 스키마를 결정합니다. 테스트 도구 모음에 device.json 파일에 없는 정보가 필요한 경우, 사용자 데이터가 필요합니다. 예를 들어 테스트에는 Wi-Fi 네트워크 자격 증명, 특정 오픈 포트 또는 사용자가 제공해야 하는 인증서가 필요할 수 있습니다. 이 정보는 사용자가 <device-tester-extract-location>/config 폴더에 생성하는 userdata.json 파일 userdata값인 라는 입력 파라미터IDT로 에 제공할 수 있습니다. userdata.json 파일 형식은 테스트 도구 모음에 포함된 userdata_schema.json 파일을 기반으로 합니다.

테스트 실행기가 userdata.json 파일을 제공해야 함을 나타내려면:

  1. suite.json 파일에서 userDataRequired을(를) true(으)로 설정합니다.

  2. <custom-test-suite-folder>에서 userdata_schema.json 파일을 생성하십시오.

  3. userdata_schema.json 파일을 편집하여 유효한 IETF Draft v4 JSON 스키마를 생성합니다.

가 테스트 제품군을 IDT 실행하면 스키마를 자동으로 읽고 이를 사용하여 테스트 러너가 제공한 userdata.json 파일을 검증합니다. 유효한 경우 userdata.json 파일의 내용은 IDT 컨텍스트테스트 오케스트레이터 컨텍스트 모두에서 사용할 수 있습니다.