dotnet vstestdotnet vstest

Эта статья применима к: ✓Пакет SDK для .NET Core 1.x Пакет SDK для .NET Core 2.xThis article applies to: ✓ .NET Core 1.x SDK .NET Core 2.x SDK

nameName

dotnet-vstest — запускает тесты из указанных файлов.dotnet-vstest - Runs tests from the specified files.

Краткий обзорSynopsis

dotnet vstest [<TEST_FILE_NAMES>] [--Settings|/Settings] [--Tests|/Tests] [--TestAdapterPath|/TestAdapterPath]
    [--Platform|/Platform] [--Framework|/Framework] [--Parallel|/Parallel] [--TestCaseFilter|/TestCaseFilter] [--logger|/logger]
    [-lt|--ListTests|/lt|/ListTests] [--ParentProcessId|/ParentProcessId] [--Port|/Port] [--Diag|/Diag] [--Blame|/Blame] [--InIsolation|/InIsolation]
    [[--] <args>...]] [-?|--Help|/?|/Help]

ОПИСАНИЕDescription

Команда dotnet-vstest запускает приложение командной строки VSTest.Console для выполнения автоматического модульного тестирования.The dotnet-vstest command runs the VSTest.Console command-line application to run automated unit tests.

АргументыArguments

TEST_FILE_NAMES

Запустите тесты из указанных сборок.Run tests from the specified assemblies. Для разделения имен тестовых сборок используйте пробелы.Separate multiple test assembly names with spaces.

ПараметрыOptions

--Settings|/Settings:<Settings File>

Параметры, используемые при выполнении тестов.Settings to use when running tests.

--Tests|/Tests:<Test Names>

Выполните тесты с именами, которые соответствуют предусмотренным значениям.Run tests with names that match the provided values. Для разделения значений используйте запятые.Separate multiple values with commas.

--TestAdapterPath|/TestAdapterPath

Используйте пользовательские адаптеры теста из указанного пути (при наличии) в тестовом запуске.Use custom test adapters from a given path (if any) in the test run.

--Platform|/Platform:<Platform type>

Архитектура целевой платформы, используемая для выполнения тестов.Target platform architecture used for test execution. Допустимые значения: x86, x64 и ARM.Valid values are x86, x64, and ARM.

--Framework|/Framework:<Framework Version>

Целевая версия платформы .NET Framework, используемая для выполнения тестов.Target .NET Framework version used for test execution. Примеры допустимых значений: .NETFramework,Version=v4.6 или .NETCoreApp,Version=v1.0.Examples of valid values are .NETFramework,Version=v4.6 or .NETCoreApp,Version=v1.0. Другие поддерживаемые значения: Framework40, Framework45, FrameworkCore10 и FrameworkUap10.Other supported values are Framework40, Framework45, FrameworkCore10, and FrameworkUap10.

--Parallel|/Parallel

Выполняйте тесты в параллельном режиме.Execute tests in parallel. По умолчанию для использования все доступные на компьютере ядра.By default, all available cores on the machine are available for use. Укажите явное число ядер, задав свойство MaxCpuCount в узле RunConfiguration в файле runsettings.Specify an explicit number of cores by setting the MaxCpuCount property under the RunConfiguration node in the runsettings file.

--TestCaseFilter|/TestCaseFilter:<Expression>

Запуск тестов, соответствующих заданному выражению.Run tests that match the given expression. <Expression> имеет формат <property>Operator<value>[|&<Expression>], где Operator принимает одно из следующих значений: =, != или ~.<Expression> is of the format <property>Operator<value>[|&<Expression>], where Operator is one of =, !=, or ~. Оператор ~ имеет семантику "содержит" и применяется для строковых свойств, таких как DisplayName.Operator ~ has 'contains' semantics and is applicable for string properties like DisplayName. Скобки () используются для группировки частей выражений.Parenthesis () are used to group sub-expressions.

-?|--Help|/?|/Help

Выводит краткую справку по команде.Prints out a short help for the command.

--logger|/logger:<Logger Uri/FriendlyName>

Укажите средство ведения журнала результатов тестирования.Specify a logger for test results.

  • Чтобы опубликовать результаты теста в Team Foundation Server, используйте поставщик средства ведения журнала TfsPublisher:To publish test results to Team Foundation Server, use the TfsPublisher logger provider:

    /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.To log results to a Visual Studio Test Results File (TRX), use the trx logger provider. Этот параметр создает файл журнала с заданным именем в каталоге результатов теста.This switch creates a file in the test results directory with given log file name. Если LogFileName не указан, для хранения результатов теста создается уникальное имя файла.If LogFileName isn't provided, a unique file name is created to hold the test results.

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

-lt|--ListTests|/lt|/ListTests:<File Name>

Перечисление всех обнаруженных тестов из указанного контейнера тестов.Lists all discovered tests from the given test container.

--ParentProcessId|/ParentProcessId:<ParentProcessId>

Идентификатор родительского процесса, отвечающего за запуск текущего процесса.Process ID of the parent process responsible for launching the current process.

--Port|/Port:<Port>

Указывает порт для подключения сокета и получения сообщений о событиях.Specifies the port for the socket connection and receiving the event messages.

--Diag|/Diag:<Path to log file>

Включает ведение подробных журналов для платформы тестирования.Enables verbose logs for the test platform. Журналы записываются в указанный файл.Logs are written to the provided file.

--Blame|/Blame

Выполнение тестов в режиме обвинения.Runs the tests in blame mode. Этот параметр полезен при изоляции проблемных тестов, которые приводят к аварийному завершению хоста для тестов.This option is helpful in isolating the problematic tests causing test host to crash. Он создает в текущем каталоге выходной файл Sequence.xml, который записывает порядок выполнения тестов перед сбоем.It creates an output file in the current directory as Sequence.xml that captures the order of tests execution before the crash.

--InIsolation|/InIsolation

Запуск тестов в изолированном процессе.Runs the tests in an isolated process. Это снижает вероятность остановки процесса vstest.console.exe при возникновении ошибки в тестах, однако тесты могут выполняться медленнее.This makes vstest.console.exe process less likely to be stopped on an error in the tests, but tests may run slower.

@<file>

Считывает файл ответов с дополнительными параметрами.Reads response file for more options.

args

Задает дополнительные аргументы, передаваемые адаптеру.Specifies extra arguments to pass to the adapter. Аргументы указываются как пары имя-значение в формате <n>=<v>, где <n> является именем аргумента, а <v> — значением аргумента.Arguments are specified as name-value pairs of the form <n>=<v>, where <n> is the argument name and <v> is the argument value. Для разделения аргументов используйте пробел.Use a space to separate multiple arguments.

ПримерыExamples

Запуск тестов в mytestproject.dll:Run tests in mytestproject.dll:

dotnet vstest mytestproject.dll

Запуск тестов в mytestproject.dll с экспортом в настраиваемую папку с пользовательским именем:Run tests in mytestproject.dll, exporting to custom folder with custom name:

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

Запуск тестов в mytestproject.dll и myothertestproject.exe:Run tests in mytestproject.dll and myothertestproject.exe:

dotnet vstest mytestproject.dll myothertestproject.exe

Запуск тестов TestMethod1:Run TestMethod1 tests:

dotnet vstest /Tests:TestMethod1

Запуск тестов TestMethod1 и TestMethod2:Run TestMethod1 and TestMethod2 tests:

dotnet vstest /Tests:TestMethod1,TestMethod2