Azure devops - 在 netcore/template 项目之外时找不到 NUnit 测试
Azure devops - NUnit tests not found when outside of a netcore/template project
我遵循了 azure devops 文档中的 tutorials 关于 运行ning Selenium 测试作为构建的一部分。
我的本地测试 运行 适用于我安装了 webdrivers 的浏览器,但是当 VSTest 任务 运行s 时,它不会从 NUnit 属性下的任何内容中解压任何测试。
现在我的项目结构需要指出几点:
- 测试项目最初是一个基本的 Visual Studio 2017 单元测试模板,带有 MS 测试。
- 我更喜欢 NUnit,所以我 writing/rewriting 使用该框架而不是创建它的 MSTest 进行测试。
我当前的 azure devops 管道配置:
工作本地测试设置:
现在,我可以使用 NUnit 模板轻松添加一个新项目,无论出于何种原因允许 azure build 看到这些测试,但这会导致我的项目结构发生变化,它默认为 netcoreapp2.1 而不是 4.6,然后 azure build 找不到各种东西。
请按照以下步骤操作,可能会解决您的问题
- 测试文件中不需要添加TestAdapter.dll
- 取消选中 "Test mix contains UI tests"
- Select 测试平台使用 "version" 作为 "Installed by Tools Installer"
或
您可能需要在 $(System.DefaultStagingDirectory) 文件夹中搜索测试 dll。有时 azure 代理将 dll 放在暂存目录而不是默认工作目录中。
像这样通过 visual studio 模板添加新的 NUnit 项目时
默认框架版本为netcoreapp2.1
如果我将其更改为我的构建框架 (net461),尽管构建状态相同 "These dlls will be skipped" 消息,但 NUnit3Adapter 现在以某种方式被识别并选择了 NUnit 测试:
我遵循了 azure devops 文档中的 tutorials 关于 运行ning Selenium 测试作为构建的一部分。
我的本地测试 运行 适用于我安装了 webdrivers 的浏览器,但是当 VSTest 任务 运行s 时,它不会从 NUnit 属性下的任何内容中解压任何测试。
现在我的项目结构需要指出几点:
- 测试项目最初是一个基本的 Visual Studio 2017 单元测试模板,带有 MS 测试。
- 我更喜欢 NUnit,所以我 writing/rewriting 使用该框架而不是创建它的 MSTest 进行测试。
我当前的 azure devops 管道配置:
工作本地测试设置:
现在,我可以使用 NUnit 模板轻松添加一个新项目,无论出于何种原因允许 azure build 看到这些测试,但这会导致我的项目结构发生变化,它默认为 netcoreapp2.1 而不是 4.6,然后 azure build 找不到各种东西。
请按照以下步骤操作,可能会解决您的问题
- 测试文件中不需要添加TestAdapter.dll
- 取消选中 "Test mix contains UI tests"
- Select 测试平台使用 "version" 作为 "Installed by Tools Installer"
或
您可能需要在 $(System.DefaultStagingDirectory) 文件夹中搜索测试 dll。有时 azure 代理将 dll 放在暂存目录而不是默认工作目录中。
像这样通过 visual studio 模板添加新的 NUnit 项目时
如果我将其更改为我的构建框架 (net461),尽管构建状态相同 "These dlls will be skipped" 消息,但 NUnit3Adapter 现在以某种方式被识别并选择了 NUnit 测试: