首页 > 解决方案 > dotnet test 不会递归搜索带有通配符的 .csproj 文件夹

问题描述

我想在几个 dotnet core C# 测试项目中运行所有测试。

如果我从根文件夹运行“dotnet test /*.test.csproj”,它只会在一个文件夹下运行测试。如果我从根文件夹运行 'dotnet test **/ /*.test.csproj' 它只会运行两个文件夹下的测试。

如何让“dotnet test”递归检查 *.test.csproj 项目的所有文件夹?即从上面的两个项目运行测试。

标签: .nettestingautomated-testsxunitcsproj

解决方案


dotnet test在根文件夹中不带任何参数运行。确保您添加了一个.sln 文件,该文件定义了解决方案的所有项目(包括测试项目)的路径。它适用于我的GitHub 存储库,用于在文件夹中包含测试文件的 API:

  • Api.IntegrationTests\

  • Logic.Tests\

  • Subfolder\Another.Tests\

我在本地计算机上添加了第三个测试项目(您不会在 GitHub 存储库中看到它)以确保它可以正常工作:

...\Subfolder\Another.Tests\bin\Debug\netcoreapp3.0\Another.Tests.dll(.NETCoreApp,Version=v3.0) 的测试运行

...\Logic.Tests\bin\Debug\netcoreapp3.0\Logic.Tests.dll(.NETCoreApp,Version=v3.0) 的测试运行

...\Api.IntegrationTests\bin\Debug\netcoreapp3.0\Api.IntegrationTests.dll(.NETCoreApp,Version=v3.0) 的测试运行


推荐阅读