Подсказка
Вы можете игнорировать определенный код выхода с помощью параметра командной строки --ignore-exit-code.
Можно также задать параметры командной строки, которые применяются к определенному тестовому проекту в файле проекта с помощью свойства MSBuild TestingPlatformCommandLineArguments. Распространённый случай использования — это тестовые проекты, в которых все тесты игнорируются, что обычно завершается кодом выхода 8 (в тестовом сеансе не выполняется ни одного теста). В этом сценарии можно добавить следующее под PropertyGroup в файл проекта:
<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>
Публикация тестового проекта с помощью dotnet publish и непосредственный запуск приложения являются другим способом выполнения тестов. Например, выполнение команды ./Contoso.MyTests.exe. В некоторых сценариях также возможно использование dotnet build для создания исполняемого файла, но стоит учитывать крайние случаи, такие как Native AOT.
Используйте dotnet run
Команду dotnet run можно использовать для сборки и запуска вашего тестового проекта. Это самый простой, хотя иногда самый медленный способ выполнения тестов. Использование dotnet run является целесообразным при редактировании и выполнении тестов локально, так как это гарантирует, что тестовый проект перестраивается при необходимости.
dotnet run также автоматически находит проект в текущей папке.
dotnet run --project Contoso.MyTests
Дополнительные сведения о dotnet run, см. в dotnet run.
Используйте dotnet exec
Команда dotnet exec или dotnet используется для выполнения (или запуска) уже созданного тестового project, это альтернатива запуску приложения напрямую. для dotnet exec требуется путь к собранной DLL тестового проекта.
dotnet exec Contoso.MyTests.dll
или
dotnet Contoso.MyTests.dll
Замечание
Предоставление пути к исполняемому файлу тестового проекта (*.exe) приводит к ошибке:
Error:
An assembly specified in the application dependencies manifest
(Contoso.MyTests.deps.json) has already been found but with a different
file extension:
package: 'Contoso.MyTests', version: '1.0.0'
path: 'Contoso.MyTests.dll'
previously found assembly: 'S:\t\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Дополнительные сведения о dotnet execсм. в разделе dotnet exec.
Используйте dotnet test
Microsoft.Testing.Platform предлагает слой совместимости с vstest.console.exe и dotnet test, обеспечивая выполнение тестов, как и раньше, при этом поддерживается новый сценарий выполнения.
dotnet test Contoso.MyTests.dll
Тесты Microsoft.Testing.Platform можно запускать (и отлаживать) в Visual Studio, они интегрируются с Test Explorer, и их также можно выполнять непосредственно как стартовый проект.
Запуск приложения с помощью Visual Studio
Microsoft.Testing.Platform тестовые проекты создаются как исполняемые программы и могут выполняться напрямую. При этом выполняются все тесты в заданном исполняемом файле, если фильтр не указан.
- Перейдите к тестовому проекту, который вы хотите запустить в Solution Explorer, щелкните её правой кнопкой мыши и выберите Установить в качестве начального проекта.
- Выберите Отладка>Запуск без отладки (или используйте Ctrl+F5) для запуска выбранного тестового проекта.
Откроется окно консоли с выполнением и сводкой тестового запуска.
Отладка приложения непосредственно в Visual Studio
Microsoft.Testing.Platform тестовый проект можно отлаживать напрямую. Чтобы выполнить отладку всех тестов в указанном исполняемом файле, если фильтр не указан:
- Перейдите к тестовому проекту, который вы хотите запустить в Solution Explorer, щелкните по нему правой кнопкой мыши и выберите Установить как стартовый проект.
- Задайте точку останова в тесте, который вы хотите отлаживать.
- Перейдите к Debug>Start Debuging (или нажмите F5), чтобы выполнить отладку выбранного тестового project.
Все тесты выполняются до тех пор, пока не будет достигнута точка останова. Пошагово выполните ваш тест, чтобы его отладить. После завершения отладки приложение возобновляет выполнение всех оставшихся тестов, если вы не остановите его.
Использование обозревателя тестов
Чтобы запустить тест, перейдите в обозреватель тестов, выберите тест (или тесты) для запуска. Щелкните его правой кнопкой мыши и выберите Запустить. Аналогично отладке теста, выберите тест (или тесты) в обозревателе тестов, щелкните правой кнопкой мыши и выберите Отладка.
Замечание
Автоматическое обновление тестов без сборки проекта недоступно.
Расширение C# вместе с C# Dev Kit позволяет отлаживать и выполнять тесты в Visual Studio Code, а также добавляет интеграцию с обозревателем тестов Visual Studio Code.
Запуск приложения с помощью кода Visual Studio
Microsoft.Testing.Platform тестовые проекты собираются как исполняемые файлы и могут запускаться непосредственно. При этом выполняются все тесты в заданном исполняемом файле, если фильтр не указан.
- Перейдите в тестовый файл, для которого требуется выполнить тесты.
- Используйте Ctrl+F5 для запуска выбранного тестового проекта. Если у вас есть несколько проектов, всплывающее окно попросит вас выбрать один для запуска.
Откроется окно консоли с выполнением и сводкой тестового запуска.
Отладка приложения непосредственно в коде Visual Studio
Microsoft.Testing.Platform тестовые проекты создаются в виде исполняемых файлов и могут выполняться напрямую. При этом выполняются все тесты в заданном исполняемом файле, если фильтр не указан.
- Перейдите в тестовый файл, для которого требуется выполнить тесты.
- Используйте F5 для отладки выбранного тестового project. Если у вас есть несколько проектов, всплывающее окно попросит вас выбрать один для запуска.
Подсказка
Существует несколько других способов запуска dotnet project с помощью C# DevKit, таких как запуск из solution explorer или создание соответствующих конфигураций запуска. Они указаны в документации Visual Studio Code.
По мере запуска project откроется вкладка выходных данных с выполнением и сводкой тестового запуска.
Использование обозревателя тестов
Чтобы запустить тест, перейдите в обозреватель тестов, выберите тест (или тесты) для запуска. Щелкните его правой кнопкой мыши и выберите Запустить. Аналогично отладке теста, выберите тест (или тесты) в обозревателе тестов, щелкните правой кнопкой мыши и выберите Отладка.
Замечание
Автоматическое обновление тестов без сборки проекта недоступно.
Чтобы запустить один тестовый проект в системе CI, добавьте один шаг для каждого исполняемого теста, который вы хотите запустить, например, в Azure DevOps.
- task: CmdLine@2
displayName: "Run Contoso.MyTests"
inputs:
script: '.\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
dotnet test Выполните команду вручную, как и типичный локальный рабочий процесс:
- task: CmdLine@2
displayName: "Run tests"
inputs:
script: 'dotnet test' # add command-line options as needed
Запустите задачу DotNetCoreCLI Azure с помощью команды тестирования. Для этого требуется global.json файл в корневом каталоге репозитория, который указывает Microsoft.Testing.Platform в качестве тестового средства выполнения:
{
"test": {
"runner": "Microsoft.Testing.Platform"
}
}
- task: DotNetCoreCLI@2
displayName: "Run tests"
inputs:
command: test
Замечание
Поддержка Microsoft.Testing.Platform в DotNetCoreCLI добавлена в 2.263.0 версии задачи.