이 문서의 적용 대상: ✔️ .NET 6 SDK 이상 버전
중요합니다
이제 dotnet vstest 어셈블리를 dotnet test실행하는 데 사용할 수 있는 명령이 대체됩니다.
dotnet 테스트를 참조하세요.
이름
dotnet vstest - 지정된 어셈블리에서 테스트를 실행합니다.
개요
dotnet vstest [<TEST_FILE_NAMES>] [--Blame] [--Diag <PATH_TO_LOG_FILE>]
[--Framework <FRAMEWORK>] [--InIsolation] [-lt|--ListTests <FILE_NAME>]
[--logger <LOGGER_URI/FRIENDLY_NAME>] [--Parallel]
[--ParentProcessId <PROCESS_ID>] [--Platform] <PLATFORM_TYPE>
[--Port <PORT>] [--ResultsDirectory<PATH>] [--Settings <SETTINGS_FILE>]
[--TestAdapterPath <PATH>] [--TestCaseFilter <EXPRESSION>]
[--Tests <TEST_NAMES>] [[--] <args>...]
dotnet vstest -?|--Help
Description
이 dotnet vstest 명령은 명령줄 애플리케이션을 VSTest.Console 실행하여 자동화된 단위 테스트를 실행합니다.
Arguments
TEST_FILE_NAMES지정된 어셈블리에서 테스트를 실행합니다. 여러 테스트 어셈블리 이름을 공백으로 구분합니다. 와일드카드가 지원됩니다.
Options
--Blame테스트를 원인 모드로 실행합니다. 이 옵션은 테스트 호스트가 충돌하는 문제가 있는 테스트를 격리하는 데 유용합니다. 크래시 전에 테스트 실행 순서를 캡처하는 Sequence.xml 현재 디렉터리에 출력 파일을 만듭니다.
--Diag <PATH_TO_LOG_FILE>테스트 플랫폼에 대한 자세한 정보 표시 로그를 사용하도록 설정합니다. 로그는 제공된 파일에 기록됩니다.
--Framework <FRAMEWORK>테스트 실행에 사용되는 대상 .NET Framework 버전입니다. 유효한 값의 예는 .입니다
.NETFramework,Version=v7.0. 지원되는 다른 값은Framework40,FrameworkCore10Framework45및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테스트를 병렬로 실행합니다. 기본적으로 컴퓨터에서 사용 가능한 모든 코어를 사용할 수 있습니다. runsettings 파일의 노드 아래에
RunConfiguration속성을 설정MaxCpuCount하여 명시적 코어 수를 지정합니다.--ParentProcessId <PROCESS_ID>현재 프로세스를 시작하는 부모 프로세스의 프로세스 ID입니다.
--Platform <PLATFORM_TYPE>테스트 실행에 사용되는 대상 플랫폼 아키텍처입니다. 유효한 값은
x86,x64및ARM.--Port <PORT>소켓 연결 및 이벤트 메시지 수신에 대한 포트를 지정합니다.
--ResultsDirectory:<PATH>테스트 결과 디렉터리가 없는 경우 지정된 경로에 만들어집니다.
--Settings <SETTINGS_FILE>테스트를 실행할 때 사용할 설정입니다.
--TestAdapterPath <PATH>테스트 실행에서 지정된 경로(있는 경우)의 사용자 지정 테스트 어댑터를 사용합니다.
--TestCaseFilter <EXPRESSION>지정된 식과 일치하는 테스트를 실행합니다.
<EXPRESSION>는 형식<property>Operator<value>[|&<EXPRESSION>]입니다. 여기서 연산자는 그!=중=하나이거나~. 연산~자에는 'contains' 의미 체계가 있으며 , 같은DisplayName문자열 속성에 적용할 수 있습니다. 괄호()는 하위 식 그룹을 지정하는 데 사용됩니다. 자세한 내용은 TestCase 필터를 참조하세요.--Tests <TEST_NAMES>제공된 값과 일치하는 이름으로 테스트를 실행합니다. 여러 개의 값은 쉼표로 분리합니다.
-?|--Help명령에 대한 짧은 도움말을 출력합니다.
@<file>추가 옵션을 보려면 응답 파일을 읽습니다.
args어댑터에 전달될 추가 인수를 지정합니다. 인수는 인수 이름이고
<v>인수 값인 폼<n>=<v><n>의 이름-값 쌍으로 지정됩니다. 여러 개의 인수를 구분하려면 공백을 사용합니다.
예시
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
참고하십시오
.NET