harmonyostestrunner 도구
참고: HarmonyOS용Qt는 기술 미리보기 단계에 있으며 향후 릴리스에서 변경될 수 있습니다.
소개
harmonyostestrunner 도구는 HarmonyOS 기기 또는 에뮬레이터에서 단일 Qt 자동 테스트를 실행하고 호스트에 결과를 보고합니다. ctest 를 사용하여 테스트를 실행할 때, CMake 테스트 래퍼가 일반적으로 이를 대신 호출합니다. 테스트 HAP가 한 대의 컴퓨터에서 빌드되었으나 장치가 다른 컴퓨터에 연결되어 있거나, 테스트 HAP는 있지만 CMake 빌드 트리가 없는 경우에는 이 도구를 직접 호출하십시오.
이 도구는 테스트 패키지를 빌드하거나 설치하지 않습니다. 대신, harmonydeployqt가 테스트 바이너리를 단일 테스트 HAP로 묶어줍니다( --test-bundle 옵션을 통해). 해당 HAP를 미리 빌드하고, 서명하고, 기기에 설치해야 합니다:
hdc install <path/to/autotests-signed.hap>작동 원리
- 대상 기기에 테스트 번들 HAP가 설치되어 있는지 확인합니다.
- 실행 중인 번들 인스턴스를 강제 종료한 다음, `
aa start`를 사용하여 기능을 실행하며, 플랫폼에 어떤 테스트 공유 라이브러리를 로드할지, 그리고 애플리케이션 샌드박스 내에서 테스트의 표준 출력과 종료 코드를 어디로 리디렉션할지 알려줍니다. - 테스트가 실행되는 동안 테스트의 표준 출력을 호스트로 스트리밍합니다.
- 테스트가 완료될 때까지 대기하며, 종료 코드 파일이 읽기 가능해지면 테스트가 완료된 것으로 감지합니다. 활성 상태 확인 기능을 통해 중단된 프로세스를 감지하고, 선택 사항인 진행 상황 없음 감시 기능은
PASS또는FAIL결과를 더 이상 생성하지 않는 테스트를 강제 종료합니다. - 테스트가 차단형 시스템 대화 상자를 선언하고 테스트 출력이 중단되면,
uitest를 사용하여 화면 레이아웃을 덤프하고 예상되는 버튼을 클릭합니다. - 이 함수는 테스트의 종료 코드를 자체 종료 코드로 반환합니다.
사용 방법
기본 구문은 다음과 같습니다:
harmonyostestrunner [OPTIONS] <test-binary> [TESTARGS]<test-binary> 인수는 테스트 공유 라이브러리의 경로입니다(예: libtst_qobject.so). 이 파일 이름은 번들 내에서 실행할 테스트를 지정합니다. 그 뒤에 오는 내용(예: 테스트 함수 이름이나 -v2)은 도구가 해당 테스트로 전달합니다.
옵션
다음 표에는 harmonyostestrunner 의 명령줄 옵션이 나열되어 있습니다. 각 옵션은 괄호 안에 표시된 환경 변수를 통해 설정할 수 있습니다. 명령줄 값이 우선 적용됩니다.
| 옵션 | 설명 |
|---|---|
--bundle-name <name> | 설치된 테스트 HAP(QT_HARMONYOS_BUNDLE_NAME)의 HarmonyOS 번들 이름입니다. 기본값은 org.qtproject.autotests 입니다. |
--ability-name <name> | 테스트 HAP(QT_HARMONYOS_ABILITY_NAME) 내의 HarmonyOS 기능 이름입니다. 기본값은 QAbility 입니다. |
--hdc <path> | hdc 도구의 경로(QT_HARMONYOS_HDC). 기본값은 PATH 에 있는 hdc 입니다. |
--timeout <seconds> | 테스트가 중단되기 전까지 테스트 완료를 기다리는 시간(초) (QT_HARMONYOS_TEST_TIMEOUT). 기본값은 300입니다. |
--no-progress-timeout <seconds> | 도구가 테스트가 중단되었다고 선언하기까지 PASS 또는 FAIL 결과가 없는 시간(초) (QT_HARMONYOS_NO_PROGRESS_TIMEOUT). 기본값은 60이며, 0을 설정하면 워치독 기능이 비활성화됩니다. |
--device <key> | 대상 장치(QT_HARMONYOS_DEVICE)에 대한 hdc 연결 키(-t). 여러 장치를 연결할 때 필요합니다. |
--test-config <path> | 생성된 테스트 번들 배포 설정 파일의 경로(QT_HARMONYOS_TEST_CONFIG). 빌드 과정에서 이 파일이 생성되며, CMake 테스트 래퍼가 이를 전달합니다. 도구는 응답해야 하는 차단형 시스템 대화 상자에 대해 이 파일을 참조합니다. |
--help | 도움말 정보를 표시합니다. |
--version | 도구 버전을 표시합니다. |
사용 예시
특정 기기에서 ‘ tst_qobject ’ 테스트를 실행하고, ‘ signalsBlocked ’ 테스트 케이스만 실행합니다:
harmonyostestrunner --device 127.0.0.1:5555 libtst_qobject.so signalsBlockedQt Test 프레임워크에 대한 자세한 내용은 Qt Test 개요를 참조하십시오.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.