#azure-devops #azure-pipelines #devops
Вопрос:
У меня есть файл yaml для моего конвейера сборки, в котором я запускаю свой проект модульного тестирования. В этом проекте есть несколько .csv
файлов и .xls(x)
файлов, используемых для модульного тестирования. Файлы тезисов имеют значение Copy Always
.
Все тесты отлично выполняются на локальной машине. Но когда мои тесты выполняются в Devops, кажется, что файлы не копируются в каталог bin.
В моем yaml у меня есть это для запуска тестового проекта:
- task: DotNetCoreCLI@2
displayName: Test .NET core Application
inputs:
command: test
projects: '$(testProjects)'
arguments: '--configuration $(buildConfig)'
В журнале вывода сборки я вижу, что файлы присутствуют в этом расположении:
##[debug] D:a1sMyAppImportTestsDatasales_04.csv (file)
##[debug] D:a1sMyAppImportTestsDataSales_02.csv (file)
##[debug] D:a1sMyAppImportTestsDatasales_01.xls (file)
##[debug] D:a1sMyAppImportTestsDatasales_stock_01.csv (file)
Но фактический тест ищет файлы в bin
папке:
Failed Throws_A_FileNotFound_When_The_File_Does_Not_Exist [1 ms]
Error Message:
Assert.AreEqual failed. Expected:<The file could not be found, read or did not contain data>.
Actual:<The file 'D:a1sMyAppImportTestsbinReleasenet5.0Datasales_01.xls' could not be found, read or did not contain data>.
Как вы можете видеть, пути к файлам разные. По какой-то причине файлы не копируются в bin
папку, хотя для каждого файла в качестве действия сборки установлено «Копировать всегда».
Как я могу решить эту проблему?
Комментарии:
1. проверьте журналы этапов сборки
2. @ShaykiAbramczyk Чего тебе не хватает? Для запуска модульных тестов не существует конкретного шага сборки. Команда, которую он выполняет (согласно моему журналу сборки), является
"dotnet.exe" test D:a1sMyAppImportTestsTests.csproj --logger trx --results-directory D:a_temp --configuration Release