TAEF에 대한 종료 코드

TAEF에 대한 "Te.exe" 명령줄 실행 프런트 엔드는 실행 중에 오류가 발생하는 경우 0이 아닌 종료 코드를 반환합니다. '오류'가 발생할 수 있는 다양한 방법이 있으며 프로세스 종료 코드는 이를 반영합니다.

Te.exe 프로세스 종료 코드는 32비트 숫자이며, 해당 숫자 내의 다른 비트는 다양한 유형의 오류를 반영합니다. 종료 코드는 다음과 같이 세분화됩니다.

  • 비트 0-15: "테스트 결과 값" - 통과하지 않는 테스트의 수입니다.
  • 비트 16-23: "TestMode 결과 값" - TestMode의 오류(아직 사용되지 않음).
  • 비트 24-30: "Harness 결과 값" - 하네스 자체의 오류입니다.

가장 중요한 비트(비트 31, 부호 있는 숫자의 부호 비트)는 서명/서명되지 않은 혼동을 방지하는 데 사용되지 않습니다. 프로세스 종료 코드는 항상 양수입니다. 더 실질적으로 명시된:

  • 종료 코드가 0xFFFF(65535)보다 작거나 같으면 Te.exe 실행된 통과되지 않는 테스트(실패, 차단, 실행 또는 건너뛰기)의 수입니다. 65535 테스트가 통과되지 않은 경우 값은 65535로 제한됩니다.
  • 종료 코드가 0xFFFF/65535보다 크면 실행 중인 테스트 코드 이외의 문제가 발생했습니다.

다음 목록에서는 현재 "Harness 결과 값" 및 해당 해석을 보여 있습니다.

Harness 결과 값 Te.exe 종료 코드 해석
1 0x01000000(16777216) 도움말이 요청되었습니다("/?" 또는 "/!") - 테스트가 실행되지 않았습니다.
2 0x02000000(33554432) Wex.Logger에서 오류를 보고했습니다.
3 0x03000000(50331648) Wex.Logger를 초기화할 수 없습니다.
4 0x04000000(67108864) Wex.Logger가 잘못된 통과/실패 횟수를 생성했습니다(일반적으로 테스트에서 StartGroup/Engroup 호출의 불균형)
5 0x05000000(83886080) 잘못된 명령줄(유효한 테스트 파일이 지정되지 않았습니다. 여러 테스트 파일로 지정된 "/inproc").
6 0x06000000(100663296) 다른 예외가 발생했습니다.
7 0x07000000(117440512) 테스트가 실행되지 않았습니다.
8 0x08000000(134217728) TAEF 세션 시간이 초과되었습니다.
9 0x09000000(150994944) 버전 정보가 요청되었습니다("/version") - 테스트가 실행되지 않았습니다.