dotnet vstest (테스트를 실행하는 데 사용되는 .NET 명령어)

이 문서의 적용 대상: ✔️ .NET 6 SDK 이상 버전

중요합니다

이제 dotnet vstest 어셈블리를 dotnet test실행하는 데 사용할 수 있는 명령이 대체됩니다. dotnet 테스트를 참조하세요.

이름

dotnet vstest - 지정된 어셈블리에서 테스트를 실행합니다.

개요

dotnet vstest [<TEST_FILE_NAMES>] [--Blame] [--Collect:<DATA_COLLECTOR_NAME>]
    [--Diag:<PATH_TO_LOG_FILE>] [-e|--Environment:<NAME="VALUE">]
    [--Framework:<FRAMEWORK>] [--InIsolation] [-lt|--ListTests:<FILE_NAME>]
    [--logger:<LOGGER_URI/FRIENDLY_NAME>] [--Parallel]
    [--Platform:<PLATFORM_TYPE>] [--ResultsDirectory:<PATH>]
    [--Settings:<SETTINGS_FILE>] [--TestAdapterPath:<PATH>]
    [--TestCaseFilter:<EXPRESSION>] [--Tests:<TEST_NAMES>] [[--] <args>...]

dotnet vstest -?|--Help

Description

dotnet vstest 명령은 명령줄 애플리케이션을 VSTest.Console 실행하여 자동화된 단위 테스트를 실행합니다. 이 문서의 옵션은 다음으로 vstest.console전달됩니다. 명령줄 옵션의 전체 목록은 vstest.console.exe 명령줄 옵션을 참조하세요.

Arguments

  • TEST_FILE_NAMES

    지정된 어셈블리에서 테스트를 실행합니다. 여러 테스트 어셈블리 이름을 공백으로 구분합니다. 와일드카드가 지원됩니다.

Options

  • --Blame

    테스트를 원인 모드로 실행합니다. 이 옵션은 테스트 호스트가 충돌하는 문제가 있는 테스트를 격리하는 데 유용합니다. 크래시 전에 테스트 실행 순서를 캡처하는 Sequence.xml 현재 디렉터리에 출력 파일을 만듭니다.

  • --Collect:<DATA_COLLECTOR_NAME>

    테스트 실행에 대해 데이터 수집기를 사용하도록 설정합니다. 예를 들어 --Collect:"Code Coverage" 기본 제공 Visual Studio 수집기를 사용하여 코드 검사를 수집하고 플랫폼 간 Coverlet 수집 --Collect:"XPlat Code Coverage" 기를 사용합니다. 자세한 내용은 테스트 실행 모니터링 및 분석을 참조하세요.

  • --Diag:<PATH_TO_LOG_FILE>

    테스트 플랫폼에 대한 자세한 정보 표시 로그를 사용하도록 설정합니다. 로그는 제공된 파일에 기록됩니다.

  • -e|--Environment:<NAME="VALUE">

    테스트 호스트 프로세스에 대한 환경 변수의 값을 설정합니다. 변수가 없으면 변수를 만들고, 변수가 있으면 재정의합니다. 이 옵션을 사용하면 격리된 프로세스에서 테스트를 강제로 실행합니다. 옵션을 여러 번 지정하여 여러 변수를 설정합니다.

  • --Framework:<FRAMEWORK>

    테스트 실행에 사용되는 대상 .NET Framework 버전입니다. 유효한 값의 예는 .입니다 .NETFramework,Version=v7.0. 지원되는 다른 값은 Framework40, Framework45FrameworkCore10FrameworkUap10.

  • --InIsolation

    격리된 프로세스에서 테스트를 실행합니다. 이렇게 하면 vstest.console.exe 프로세스가 테스트의 오류에서 중지될 가능성이 적지만 테스트 실행 속도가 느려질 수 있습니다.

  • -lt|--ListTests:<FILE_NAME>

    지정된 테스트 컨테이너에서 검색된 모든 테스트를 나열합니다.

  • --logger:<LOGGER_URI/FRIENDLY_NAME>

    테스트 결과에 대한 로거를 지정합니다.

    • 테스트 결과를 Team Foundation Server에 게시하려면 로거 공급자를 TfsPublisher 사용합니다.

      /logger:TfsPublisher;
          Collection=<team project collection url>;
          BuildName=<build name>;
          TeamProject=<team project name>
          [;Platform=<Defaults to "Any CPU">]
          [;Flavor=<Defaults to "Debug">]
          [;RunTitle=<title>]
      
    • 결과를 Visual Studio TRX(테스트 결과 파일)에 기록하려면 로거 공급자를 trx 사용합니다. 이 스위치는 지정된 로그 파일 이름을 사용하여 테스트 결과 디렉터리에 파일을 만듭니다. LogFileName 제공되지 않으면 테스트 결과를 보관하기 위해 고유한 파일 이름이 만들어집니다.

      /logger:trx [;LogFileName=<Defaults to unique file name>]
      
  • --Parallel

    테스트를 병렬로 실행합니다. 기본적으로 컴퓨터에서 사용 가능한 모든 코어를 사용할 수 있습니다. MaxCpuCount 파일의 노드 아래에 RunConfiguration 속성을 설정 하여 명시적 코어 수를 지정합니다.

  • --Platform:<PLATFORM_TYPE>

    테스트 실행에 사용되는 대상 플랫폼 아키텍처입니다. 유효한 값은 x86,, x64, ARM64ARM, S390xPpc64le, RiscV64LoongArch64.

  • --ResultsDirectory:<PATH>

    테스트 결과 디렉터리가 없는 경우 지정된 경로에 만들어집니다.

  • --Settings:<SETTINGS_FILE>

    테스트를 실행할 때 사용할 설정입니다.

  • --TestAdapterPath:<PATH>

    테스트 실행에서 지정된 경로(있는 경우)의 사용자 지정 테스트 어댑터를 사용합니다.

  • --TestCaseFilter:<EXPRESSION>

    지정된 식과 일치하는 테스트를 실행합니다. <EXPRESSION>는 형식<property>Operator<value>[|&<EXPRESSION>]입니다. 여기서 연산자는 그 =!=하나이거나 ~. 연산 ~ 자에는 'contains' 의미 체계가 있으며 , 같은 DisplayName문자열 속성에 적용할 수 있습니다. 괄호 () 는 하위 식 그룹을 지정하는 데 사용됩니다. 자세한 내용은 TestCase 필터를 참조하세요.

  • --Tests:<TEST_NAMES>

    제공된 값과 일치하는 이름으로 테스트를 실행합니다. 여러 개의 값은 쉼표로 분리합니다.

  • -?|--Help

    명령에 대한 짧은 도움말을 출력합니다.

  • @<file>

    추가 옵션을 보려면 응답 파일을 읽습니다.

  • args

    어댑터에 전달될 추가 인수를 지정합니다. 인수는 인수 이름이고 <n>=<v> 인수 값인 폼 <n><v> 의 이름-값 쌍으로 지정됩니다. 여러 개의 인수를 구분하려면 공백을 사용합니다.

예시

mytestproject.dll테스트를 실행합니다.

dotnet vstest mytestproject.dll

mytestproject.dll테스트를 실행하여 사용자 지정 이름을 가진 사용자 지정 폴더로 내보냅니다.

dotnet vstest mytestproject.dll --logger:"trx;LogFileName=custom_file_name.trx" --ResultsDirectory:custom/file/path

mytestproject.dllmyothertestproject.exe테스트를 실행합니다.

dotnet vstest mytestproject.dll myothertestproject.exe

테스트 실행 TestMethod1 :

dotnet vstest /Tests:TestMethod1

실행 TestMethod1TestMethod2 테스트:

dotnet vstest /Tests:TestMethod1,TestMethod2

참고하십시오