다음을 통해 공유


TAEF에 대한 종료 코드

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

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

  • 비트 0-15: "테스트 결과 값" - 통과되지 않는 테스트의 수입니다.
  • 비트 16-23: "테스트 모드 결과 값" - 테스트 모드에서 발생한 오류(아직 사용되지 않음)입니다.
  • 비트 24-30: ‘하니스 결과 값’ - 하니스 자체의 오류입니다.

가장 중요한 비트(비트 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"). 테스트가 실행되지 않았습니다.