Как остановить скрипт powershell после неудачной команды do tnet? - PullRequest
1 голос
/ 03 марта 2020

Я вижу ненадежное поведение в команде do tnet при выполнении из сценария powershell.

Выполнение в сценарии powershell:

dotnet build "$slnPath"

игнорирует любые ошибки компиляции и продолжает выполнение скрипта. Я должен проверить $ lastexitcode , чтобы увидеть, есть ли какие-либо ошибки.

С другой стороны, команда:

dotnet test "$slnPath"

немедленно прекращает выполнение PowerShell скрипт, если есть какие-либо неудачные юнит-тесты.

Это нормальное поведение? Нужно ли писать другую обработку ошибок в зависимости от аргументов команды do tnet?

1 Ответ

0 голосов
/ 03 марта 2020

Команда dotnet test запускает консольное приложение для запуска тестов, указанное для проекта. Исполнитель тестов выполняет тесты, определенные для среды модульных тестов (например, MSTest, NUnit или xUnit) и сообщает об успехе или неудаче каждого теста . Если все тесты пройдены успешно, тестовый исполнитель возвращает 0 в качестве кода выхода; в противном случае, если какой-либо тест не пройден, он возвращает 1. Но для построения dotnet build требуется файл project.assets. json, в котором перечислены зависимости вашего приложения. Файл создается при выполнении восстановления tnet. Без файла ресурсов инструмент не может разрешить ссылочные сборки, что приводит к ошибкам. Вы можете прочитать, что делает каждая команда (и может быть найдена какая-нибудь клавиша для управления ими) по этому адресу tool_description

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...