다음을 통해 공유


Te.exe 명령 옵션

사용

<te.exe test_binaries> [/appendWttLogging] [/breakOnCreate] [/breakOnError] [/breakOnInvoke] [/coloredConsoleOutput] [ /console:flushWrites] [/console:position=[x,y | current] [/console:size=<x,y>] [ /console:topmost ] [/defaultAppDomain] [/disableConsoleLogging] [/disableTimeouts] [/ dpiaware ] [/enableWttLogging] [/inproc] [/isolationLevel] [/labMode] [/list] [/listProperties] [/logFile:<name>] [/logOutput:<mode>] [/miniDumpOnCrash] [/miniDumpOnError] [/name:testname>] [/outputFolder:<<folderName] [/p:<ParamName>>=<ParamValue>] [/parallel] [/persistPictResults] [/pict:<OptionName>=<OptionValue>] [/rebootStateFile] [/reportLoadingIssue] [/runas:<RunAsType>] [/runIgnoredTests] [/runon:<MachineName>] [/screenCaptureOnError] [/select:<query>] [/sessionTimeout:<value>] [/ stackFrameCount:<value>] [/stackTraceOnError] [/terminateOnFirstFailure] [/testDependencies:<files>] [/testmode:Loop] [/testmode:Stress] [/testTimeout:<value>] [/unicodeOutput:<true/false>] [/version] [/wttDeviceString:<value>] [/wttDeviceStringSuffix:<value>]

선택/실행 명령

test_binaries

실행할 테스트 파일을 하나 이상 지정합니다(공백으로 구분). 와일드카드 문자가 지원됩니다.

te.exe test1.dll

해석: test1.dll 모든 테스트를 실행합니다.

te.exe test1.dll test2.dll test3.dll

해석: test1.dll, test2.dll 및 test3.dll 모든 테스트를 실행합니다.

te.exe *.dll

해석: 현재 디렉터리의 모든 dll에서 모든 테스트를 실행합니다.

/coloredConsoleOutput:<true/false>

TAEF에서 색이 지정된 콘솔 텍스트를 출력할지 여부를 지정합니다. 기본값은 true입니다. false로 설정하면 TAEF는 기본 콘솔 색으로 모든 텍스트를 출력합니다.

te.exe test1.dll /coloredConsoleOutput:false

/console:<optionName>=<value>

TE의 콘솔 사용을 구성하는 옵션을 제공합니다. 다음 옵션을 사용할 수 있습니다.

/console:flushWrites

모든 줄이 작성된 후 콘솔 출력이 플러시되도록 합니다. TE.exe 출력이 리디렉션될 때 유용합니다.

/console:position=[x,y | current ]

기본 모니터의 모퉁이를 기준으로 콘솔 창의 위치를 픽셀 단위로 설정합니다. 현재 값을 사용하여 다시 부팅에서 다시 시작 시 현재 콘솔 위치를 저장하고 사용하도록 지정합니다.

/console:size=[ <x,y> | 현재 ]

콘솔 창의 크기(문자 크기)를 설정합니다. 필요한 경우 화면 버퍼 크기가 창의 크기와 일치하도록 증가합니다. 현재 값을 사용하여 다시 부팅에서 다시 시작 시 현재 콘솔 크기를 저장하고 사용하도록 지정합니다.

/console:topmost

실행 기간 동안 데스크톱 z 순서에서 콘솔이 '맨 위'te.exe 실행되도록 유지합니다.

/dpiaware

DPI 인식으로 표시된 프로세스에서 테스트를 실행합니다. 높은 DPI를 참조하세요. 메타데이터("DpiAware")를 통해 설정할 수도 있습니다.

/inproc

TE가 아닌 TE.exe 프로세스 자체 내에서 모든 테스트를 실행합니다. ProcessHost.exe.

te.exe test1.dll /inproc

참고 항목

TE는 /inproc 설정을 사용할 때 한 번에 하나의 테스트 dll 실행만 지원합니다.

/isolationLevel:<Level>

TAEF 테스트를 실행할 때 사용할 최소 격리 수준을 지정합니다. 이 값이 메타데이터로 지정된 IsolationLevel과 충돌하는 경우 값은 가장 엄격한 범위의 격리 수준이 됩니다. 자세한 내용은 테스트 격리를 참조하세요.

te.exe test1.dll /isolationLevel:Class

/labMode

테스트를 실행하고 잠재적인 차단 UI를 제거합니다(예: 충돌하는 테스트의 Windows 오류 보고 대화 상자).

/list

모든 test_binaries 이름과 그 안에 있는 클래스 및 메서드를 나열합니다. 선택 조건을 지정한 경우 조건에 맞는 이름만 나열합니다.

 te.exe test1.dll test2.dll /list

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example1
  WEX::UnitTests::Test1::Example2
  WEX::UnitTests::Test1::Example3

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example1
  WEX::UnitTests::Test2::Example2
  WEX::UnitTests::Test2::Example3
 te.exe test1.dll test2.dll /select:@name='*Example2*' /list

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example2

 WEX: :UnitTests::Test2
  WEX::UnitTests::Test2::Example2

/listProperties

사용 가능한 경우 모든 test_binaries 이름 및 속성과 해당 클래스 및 메서드를 설치 및 해체 함수 이름과 함께 나열합니다. 선택 조건을 지정한 경우 조건에 맞는 이름만 나열합니다.

 te.exe test1.dll test2.dll /listProperties

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example1
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = MTA
  WEX::UnitTests::Test1::Example2
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA
  WEX::UnitTests::Test1::Example3
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example1
   Property[ThreadingModel] = MTA
  WEX::UnitTests::Test2::Example2
   Property[ThreadingModel] = STA
  WEX::UnitTests::Test2::Example3
   Property[ThreadingModel] = MTA
 te.exe test1.dll test2.dll /select:@name='*Example2*' /listProperties

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example2
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example2
   Property[ThreadingModel] = STA

/name:<testname>

테스트 이름 기반 선택은 "/select:@Name='testname>'<"의 쉬운 대안입니다. <테스트 이름은> 여전히 와일드카드 문자("*" 및 "?")를 포함할 수 있지만 작은따옴표 안에 포함되어서는 안 됩니다. 명령 프롬프트에서 /select 및 /name을 모두 지정하면 /select 쿼리가 우선적으로 적용되고 /name이 무시됩니다.

te.exe test1.dll /name:*TestToLower

해석: 메서드 이름이 'TestToLower'로 끝나는 test1.dll 모든 테스트를 실행합니다. 선택 조건을 /select:@Name='*TestToLower'로 사용하여 동일하게 나타낼 수 있습니다.

te.exe test1.dll /name:*StringTest*

해석: 네임스페이스, 클래스 또는 메서드 이름에 'StringTest'라는 구가 포함된 모든 테스트를 test1.dll 실행합니다.

/outputFolder:<folderName>

생성된 모든 파일을 배치할 폴더를 지정합니다. 기본값은 현재 디렉터리입니다. 환경 변수를 사용할 수 있습니다. 예를 들면 다음과 같습니다.

te.exe test1.dll /outputFolder:%TEMP%\\MyOutput

/p:<ParamName>=<ParamValue>

매개 변수 name=ParamName 및 parameter value=ParamValue를 사용하여 런타임 매개 변수를 정의합니다. 이러한 매개 변수는 테스트 메서드 또는 설치/정리 메서드에서 액세스할 수 있습니다.

te.exe test1.dll /p:x=5 /p:myParm=cool

x를 테스트 코드에서 지원되는 여러 형식 중 하나로 사용할 수 있습니다. 예를 들어 여기에서 int 및 WEX::Common::String으로 검색하는 것을 볼 수 있습니다.

                int x = 0;
                String xString;
                RuntimeParameters::TryGetValue(L"x", x);
                RuntimeParameters::TryGetValue(L"x", xString);

자세한 내용은 TAEF를 방문하세요. 런타임 매개 변수 도움말 페이지입니다.

/평행의

여러 프로세서에서 병렬로 테스트를 실행합니다. 테스트는 '병렬' 메타데이터로 표시되어 병렬 실행을 옵트인해야 합니다.

te.exe test1.dll /parallel

자세한 내용은 병렬 도움말 페이지를 참조하세요.

/persistPictResults

현재 실행에서 PICT DataSource를 사용하여 테스트를 위해 PICT.exe 생성된 결과를 캐시합니다. 후속 테스트 실행은 동일한 모델 및 시드 파일에 대해 실행 PICT.exe 대해 캐시된 결과를 활용하려고 시도합니다.

/pict:<OptionName>=<OptionValue>

PICT DataSource를 사용하여 테스트를 위해 호출되는 PICT.exe 제어하는 옵션을 제공합니다. 이러한 옵션 중 하나를 설정하면 현재 코드의 모든 연결된 메타데이터가 재정의됩니다. 다음 옵션을 사용할 수 있습니다.

/Pict:Order=3
PICT.exe /o 명령 옵션을 통해 값을 전달하여 조합 순서를 설정합니다.

/Pict:ValueSeparator=;
PICT.exe /d 명령 옵션을 통해 값을 전달하여 값 구분 기호를 설정합니다.

/Pict:AliasSeparator=+
PICT.exe /a 명령 옵션을 통해 값을 전달하여 별칭 구분 기호를 설정합니다.

Pict:NegativeValuePrefix=!
PICT.exe /n 명령 옵션을 통해 값을 전달하여 음수 값 접두사를 설정합니다.

/Pict:SeedingFile=test.seed
PICT.exe /e 명령 옵션을 통해 값을 전달하여 시드 파일의 경로를 설정합니다.

/Pict:Random=true
PICT 결과에서 임의성을 설정하거나 해제하고 PICT 데이터 원본 로그를 사용된 임의 시드로 만듭니다.

/Pict:RandomSeed=33
PICT.exe /r 명령 옵션을 통해 값을 전달하여 임의 시드를 설정합니다. Pict:Random이 명시적으로 false로 설정되지 않는 한 이 설정은 Pict:Random이 켜집니다.

/Pict:CaseSensitive=true
true로 설정하면 /c 명령 옵션을 전달하여 대/소문자 구분을 PICT.exe.

/Pict:Timeout=00:01:30
프로세스를 종료하기 전에 PICT.exe 완료되기를 기다리는 시간을 설정합니다. 값은 [Day.] 형식입니다. Hour[:Minute[:Second[. FractionalSeconds]]].

/runas:<RunAsType>

지정된 환경에서 테스트를 실행합니다. 자세한 사용 정보는 RunAs 설명서를 참조하세요.

te.exe *.dll /runas:System

해석: 모든 테스트를 시스템으로 실행합니다.

te.exe *.dll /runas:Elevated

해석: 모든 테스트를 관리자 권한 사용자로 실행합니다.

te.exe *.dll /runas:Restricted

해석: 모든 테스트를 관리자가 아닌 사용자로 실행합니다.

te.exe *.dll /runas:LowIL

해석: 낮은 무결성 프로세스에서 모든 테스트를 실행합니다.

/runIgnoredTests

"Ignore" 메타데이터가 "true"로 설정된 테스트 클래스 및 테스트 메서드를 포함하여 모든 테스트를 실행하거나 나열합니다(/list 또는 /listProperties와 함께 있는 경우). 기본적으로 "무시" 메타데이터가 "true"로 설정된 테스트 클래스 및 테스트 메서드는 실행하는 동안 및 나열하는 동안 건너뜁니다.

/runon:<MachineName>

지정된 컴퓨터에서 원격으로 테스트를 실행합니다. TAEF는 테스트를 실행하는 데 필요한 이진 파일을 인증, 권한 부여 및 배포하고 모든 정보를 원래 콘솔에 다시 기록합니다. 자세한 사용 정보는 컴퓨터 간 테스트 실행 설명서를 참조하세요.

te.exe *.dll /runon:TestMachine1

해석: "TestMachine1"에서 모든 테스트를 원격으로 실행합니다.

/select:<query>

각 테스트 이진 파일에서 테스트를 선택할 때 사용할 선택 조건입니다. 선택 조건은 다음 중 하나 이상으로 구성됩니다.

@[property name] = [value as string]

@[property name] >= [value as float or integer]

@[property name] > [value as float or integer]

@[property name] <= [value as float or integer]

@[property name] < [value as float or integer]

  • 문자열로서의 속성 값은 작은따옴표 안에 있어야 합니다.
  • "and", "or" 및 "not"(대/소문자를 구분하지 않음)을 사용하여 복합 선택 조건을 지정할 수 있습니다.
  • 속성 문자열 값은 "*" 및 "?" 문자를 통해 와일드카드 문자를 지원합니다.
  • 부동 소수점 및 정수 값의 경우 "*" 문자를 'exists'로 사용할 수도 있지만 부분 일치에는 사용할 수 없습니다. 예를 들어 /select:"@Priority=*" 는 유효하지만 /select:"@Priority=4*" 는 유효하지 않습니다.

te.exe test1.dll /select:"(@Name='*TestToLower' 또는 @Owner='C2') 및 not(@Priority < 3)"

해석: 메서드 이름이 'TestToLower'로 끝나거나 소유자가 'C2'이고 우선 순위가 3보다 작지 않은 test1.dll 모든 테스트를 실행합니다.

te.exe test1.dll test2.dll /select:@Priority=\*

해석: test1.dll 모든 테스트를 실행하고 테스트 메타데이터에서 우선 순위가 지정된 test2.dll.

te.exe test1.dll /select:@Name='*StringTest*'

해석: 네임스페이스, 클래스 또는 메서드 이름에 'StringTest'라는 구가 포함된 모든 테스트를 test1.dll 실행합니다.

/sessionTimeout:<value>

Te.exe 전체 실행에 대한 세션 제한 시간을 설정합니다. 제한 시간이 만료되면 테스트 세션이 정상적으로 중단되고 프로세스 종료 코드는 시간 초과가 발생했음을 나타냅니다.

참고 항목

제한 시간 값은 다음 형식으로 지정해야 합니다.

[Day.]Hour[:Minute[:Second[.FractionalSeconds]]]

참고 항목

WTT에서 실행되는 경우 이 값을 사용하여 TAEF 세션 시간이 초과되더라도 Wtt 로그 파일이 그대로 유지되도록 할 수 있습니다.

te.exe test1.dll /sessionTimeout:0:0:0.5

전체 테스트 세션은 .5초 후에 시간이 초과됩니다.

te.exe test1.dll /sessionTimeout:0:0:45

전체 테스트 세션은 45초 후에 시간이 초과됩니다.

te.exe test1.dll /sessionTimeout:0:20

전체 테스트 세션은 20분 후에 시간이 초과됩니다.

te.exe test1.dll /sessionTimeout:5

전체 테스트 세션은 5시간 후에 시간이 초과됩니다.

te.exe test1.dll /sessionTimeout:1.2

전체 테스트 세션은 1일 및 2시간 후에 시간이 초과됩니다.

/terminateOnFirstFailure

테스트 실패가 처음 발생할 때 테스트 실행을 종료합니다. 해당 테스트에 대한 모든 중단 작업이 호출되지만 모든 후속 테스트는 무시된 것으로 표시됩니다. 알려진 문제로 인해 테스트 모드를 사용할 때 테스트가 계속 실행될 수 있습니다.

te.exe test1.dll /terminateOnFirstFailure

/testDependencies:<files>

컴퓨터 간 테스트 실행을 사용할 때 배포할 추가 테스트 종속성을 지정합니다. 전체 경로가 제공되지 않는 한 TAEF는 테스트 디렉터리가 아닌 현재 디렉터리를 기준으로 검색합니다.

te.exe *.dll /runon:TestMachine1 /TestDependencies:test*.jpg; file1.doc

해석: "TestMachine1"에서 모든 테스트를 원격으로 실행하고 테스트를 실행하기 전에 'test*.jpg' 및 'file1.doc'을 원격 컴퓨터에 복사합니다. 각 파일 사양에는 하나 이상의 파일과 일치하도록 와일드카드 문자(test.txt; test*.dll; 등)가 포함될 수 있습니다.

/testTimeout:<value>

Te.exe 전체 실행에 대한 전역 테스트 제한 시간을 설정합니다. 이 값은 실행 중인 지정된 테스트에 대해 설정되었을 수 있는 테스트 제한 시간 메타데이터를 재정의합니다.

참고 항목

제한 시간 값은 다음 형식으로 지정해야 합니다.

[Day.]Hour[:Minute[:Second[.FractionalSeconds]]]

참고 항목

/inproc와 함께 사용하면 무시됩니다.

te.exe test1.dll /testTimeout:0:0:0.5

모든 테스트 및 설정/정리 방법은 .5초 후에 시간이 초과됩니다.

te.exe test1.dll /testTimeout:0:0:45

모든 테스트 및 설정/정리 방법은 45초 후에 시간이 초과됩니다.

te.exe test1.dll /testTimeout:0:20

모든 테스트 및 설정/정리 방법은 20분 후에 시간이 초과됩니다.

te.exe test1.dll /testTimeout:5

모든 테스트 및 설정/정리 방법은 5시간 후에 시간이 초과됩니다.

te.exe test1.dll /testTimeout:1.2

모든 테스트 및 설정/정리 방법은 1일 및 2시간 후에 시간이 초과됩니다.

/unicodeOutput:<true/false>

TE가 텍스트 파일에 파이프되면 기본적으로 유니코드가 출력됩니다. 한 가지 예외는 기존 ANSII 파일(''>>을 통해)에 추가하도록 요청한 경우입니다.

이 동작을 재정의하기 위해 /unicodeOutput:false를 지정할 수 있습니다. 이렇게 하면 TE가 항상 ANSII를 파일에 출력합니다.

te.exe test1.dll /unicodeOutput:false > output.txt

로거 설정

/appendWttLogging

WTT 로깅을 사용하도록 설정하면 로그 파일을 덮어쓰지 않고 로그 파일에 추가합니다. /enableWttLogging과 함께 사용해야 합니다.

te.exe test1.dll /enableWttLogging /appendWttLogging

테스트 실행이 완료되면 TE.wtl이라는 로그 파일을 만들거나 추가합니다.

/enableWttLogging

WTT 로깅을 사용하도록 설정합니다. Wttlog.dll 경로에서 사용할 수 있어야 합니다.

te.exe test1.dll /enableWttLogging

테스트 실행이 완료될 때 TE.wtl이라는 로그 파일을 생성합니다.

/defaultAppDomain

기본 애플리케이션 도메인에서 관리되는 테스트를 실행합니다.

te.exe managed.test1.dll /defaultAppDomain

/disableConsoleLogging

콘솔 로그 출력을 사용하지 않도록 설정합니다. 는 /enableWttLogging과 함께 사용해야 합니다.

te.exe test1.dll /disableConsoleLogging /enableWttLogging

/logFile:<name>

wtt 로그 파일로 사용할 이름을 지정합니다. 는 /enableWttLogging과 함께 사용해야 합니다.

te.exe test1.dll /logFile:myCustomLogFile.xml /enableWttLogging

테스트 실행이 완료될 때 myCustomeLogFile.xml 로그 파일을 생성합니다.

/logOutput:<mode>

로거의 출력 수준을 설정합니다. 유효한 값은 다음과 같습니다.

  • 높음: 모든 추적 옆에 타임스탬프를 인쇄하는 것과 같은 몇 가지 추가 콘솔 출력을 사용하도록 설정합니다.
  • 낮음: 핵심 이벤트(시작, 끝 그룹 등) 및 오류만 내보냅니다. 로그 파일에는 오류에 대한 컨텍스트를 제공하기 위해 오류를 선행하는 우선 순위가 낮은 세부 정보가 포함됩니다.
  • LowWithConsoleBuffering: Low와 동일하지만 로그 파일과 콘솔 출력 모두에 오류 컨텍스트가 포함됩니다.
  • 최저: 낮음과 동일하지만 콘솔 출력에는 오류, 테스트 실패 및 실행 요약만 포함됩니다.

/version

자세한 버전 정보를 출력합니다.

/wttDeviceString:<value>

WttLogger를 초기화할 때 WexLogger에서 사용하는 WttDeviceString을 완전히 재정의합니다.

te.exe test1.dll /wttDeviceString:$Console

/wttDeviceStringSuffix:<value>

지정된 값을 WttLogger를 초기화할 때 WexLogger에서 사용하는 기본 WttDeviceString에 추가합니다. wttDeviceString도 지정되면 무시됩니다.

te.exe test1.dll /wttDeviceStringSuffix:$Console

디버그 설정

/breakOnCreate

각 테스트 클래스를 인스턴스화하기 전에 디버거를 중단합니다.

te.exe test1.dll /breakOnCreate

/breakOnError

오류 또는 테스트 오류가 기록되면 디버거에 침입합니다.

te.exe test1.dll /breakOnError

/breakOnInvoke

각 테스트 메서드를 호출하기 전에 디버거를 중단합니다.

te.exe test1.dll /breakOnInvoke

/disableTimeouts

실행 중에 모든 시간 초과를 사용하지 않도록 설정합니다. 디버깅하는 동안 TAEF가 디버그 중인 프로그램 부분에서 대기하는 시간 제한을 방지하는 데 유용할 수 있습니다.

te.exe test1.dll /disableTimeouts

/miniDumpOnError

테스트 오류 또는 오류가 발생하는 경우 미니 덤프를 가져와서 기록합니다.

te.exe test1.dll /miniDumpOnError

/miniDumpOnCrash

테스트 크래시가 발생하는 경우 미니 덤프를 가져와서 기록합니다.

te.exe test1.dll /miniDumpOnCrash

/rebootStateFile

명시적으로 다시 부팅 테스트 실행을 사용하도록 설정합니다.

te.exe test1.dll /rebootStateFile:myFile.xml

/reportLoadingIssue

TAEF가 테스트 dll을 로드하지 못하면 오류 설명 대화 상자를 표시합니다. 네이티브 테스트 dll 로드 문제를 조사하는 데만 사용해야 합니다.

te.exe test1.dll /reportLoadingIssue

/screenCaptureOnError

테스트 오류 또는 오류가 발생하는 경우 화면 캡처를 가져와서 기록합니다.

te.exe test1.dll /screenCaptureOnError

/stackFrameCount:<value>

호출 스택을 받을 때 표시할 스택 프레임 수를 지정합니다. 기본값은 50입니다.

te.exe test1.dll /stackFrameCount:100

/stackTraceOnError

테스트 오류 또는 오류가 발생하는 경우 스택 추적을 사용하여 기록합니다.

te.exe test1.dll /stackTraceOnError

테스트 모드

/testmode:Loop

두 개의 변수 루프 및 LoopTest를 사용하여 실행을 제어할 수 있습니다.

  • 루프: 전체 실행이 실행되는 횟수를 제어합니다. 기본값은 1입니다.
  • LoopTest: 개별 테스트가 실행되는 횟수를 제어합니다. 기본값은 10입니다.

te.exe test1.dll /testmode:Loop

해석: 모든 테스트를 test1.dll 10번 실행합니다(LoopTest기본값). 전체 실행은 한 번 실행됩니다(루프기본값).

te.exe test1.dll test2.dll /testmode:Loop /Loop:3 /LoopTest:1

해석: 모든 테스트를 test1.dll 실행하고 한 번 test2.dll(LoopTest에 의해 결정됨). 전체 실행(test1.dll 및 test2.dll 모든 결합된 테스트)은 Loop에 의해 결정된 대로 3번 실행됩니다.

/testmode:Stress

'스트레스' 테스트 모드에서 TAEF는 Ctrl+C가 입력되거나 WM_CLOSE 메시지가 TAEF의 숨겨진 창으로 전송될 때까지 테스트를 무기한 실행합니다. /testmode:stress는 /inproc과 함께 실행되어야 합니다.

te.exe test1.dll /testmode:Stress /inproc

이 모드에서 지원되는 자세한 정보 및 기타 매개 변수는 테스트 모드를 참조 하세요.