이 문서의 적용 대상: ✔️ .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,Framework45FrameworkCore10및FrameworkUap10.--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,RiscV64및LoongArch64.--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.dll 및 myothertestproject.exe테스트를 실행합니다.
dotnet vstest mytestproject.dll myothertestproject.exe
테스트 실행 TestMethod1 :
dotnet vstest /Tests:TestMethod1
실행 TestMethod1 및 TestMethod2 테스트:
dotnet vstest /Tests:TestMethod1,TestMethod2
참고하십시오
-
VSTest.Console.exe 명령줄 옵션(Microsoft Learn) - 노출되지 않는 옵션을
dotnet vstest포함하여 도구에 대한VSTest.Console.exe공식 Microsoft Learn 참조입니다. 안정적이고 큐레이팅된 설명서를 보려면 여기에서 시작하세요. -
VSTest.Console.exe 명령줄 옵션(microsoft/vstest 리포지토리) - 리포지토리의
microsoft/vstest원본 파생 참조입니다. 가장 up-to날짜 옵션 세부 정보 및 내부 스위치와 관련 runsettings, 필터링 및 진단 문서에 대한 링크에 사용합니다. -
VSTest 환경 변수(microsoft/vstest) - VSTest 및 테스트 호스트가 인식하는
VSTEST_DUMP_FORCEPROCDUMP환경 변수 및VSTEST_DOTNET_ROOT_*.NET SDK가 시작될 때 설정하는 변수입니다vstest.console.
.NET