다음을 통해 공유


활성화 컨텍스트

TAEF는 테스트를 실행해야 하는 '활성화 컨텍스트'를 지정하는 메커니즘을 제공합니다.

사용자가 '활성화 컨텍스트'를 제공하면 시스템의 다양한 병렬 어셈블리에서 특정 버전 이진 파일을 선택할 수 있습니다. 필수 '활성화 컨텍스트'는 매니페스트 파일에 지정되며 'ActivationContext' 속성을 통해 TAEF에 전달할 수 있습니다. 'ActivationContext' 속성은 런타임 매개 변수 또는 테스트 메타데이터로 지정할 수 있습니다.

샘플 활성화 컨텍스트 매니페스트 파일

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" 
        processorArchitecture="*" publicKeyToken="6595b64144ccf1df"/>
    </dependentAssembly>
  </dependency>
</assembly>

위에 표시된 매니페스트 파일 'Comctlv6.manifest'는 테스트 실행 중에 comctl32.dll 버전 6을 사용하도록 지정합니다. 매니페스트 파일에 대한 자세한 내용은 매니페스트 파일 참조를 참조하세요.

명령 프롬프트에서 ActivationContext 매니페스트 지정

te MyUnitTest.dll /ActivationContext:ComctlV6.manifest

이 명령은 ComctlV6.manifest 파일에 지정된 활성화 컨텍스트를 사용하여 'MyUnitTest.dll'에서 모든 테스트를 실행합니다.

ActivationContext 매니페스트를 테스트 메타데이터로 지정

지정된 활성화 컨텍스트에서 특정 테스트 사례만 실행하려는 경우 'ActivationContext' 속성 값을 테스트 메서드의 매니페스트 파일로 설정하여 이 작업을 수행할 수 있습니다. 예를 들어 다음 테스트 메서드 선언은 기본 컨텍스트에서 다른 테스트를 실행하는 동안 지정된 활성화 컨텍스트에서 테스트 메서드 'MyTestMethod'만 실행합니다.

        BEGIN_TEST_METHOD(MyTestMethod)
            TEST_METHOD_PROPERTY(L"ActivationContext", L"ComctlV6.manifest")
        END_TEST_METHOD()

'ActivationContext' 속성은 다른 메타데이터 속성과 같은 클래스 및 어셈블리 수준에서 설정할 수 있습니다.