【发布时间】:2018-01-10 08:45:54
【问题描述】:
这可能是 Visual Studio for Mac 中不存在的一个功能,但我想我可能会在这里询问我是否做错了什么。
我有一个 ASP.NET Core MVC 项目设置为启动项目。
我还有一组针对 .NET Core 2.0 的单元测试,它们使用 Selenium 来驱动 UI 测试。为了运行这些测试,我需要先运行 ASP.NET Core MVC,然后才能运行测试,否则它们会因为应用程序未运行而失败。
在 PC 版本的 Visual Studio 中,“调试”菜单中的“启动而不调试”选项按预期启动 Web 应用。我的浏览器打开到我的应用程序。一旦我确认它正在运行,我就可以毫无问题地运行测试(通过测试资源管理器)。
在 Mac 版本的 Visual Studio 中,“调试”菜单中的“启动而不调试”选项按预期启动 Web 应用程序。我的浏览器打开到我的应用程序。一旦我确认它正在运行,我就会尝试运行测试。测试确实会运行,但在它们运行之前,它会终止正在运行的应用程序进程。由于应用不再运行,因此测试失败。
TL;DR:
我的解决方案:
- ASP.NET Core MVC 项目
- .NET Core 单元测试项目使用 Selenium
以下是两个 VS 实例的步骤:
- 点击“调试”(PC) 或“运行”(Mac)
- 点击“不调试就开始”
- 等待应用在浏览器中显示(不要关闭)
- 转到测试资源管理器 (PC) 或单元测试 (Mac)
- 运行 UI 测试套件
预期:PC 版和 Mac 版均通过测试
实际:在 Mac 版本中测试失败,因为 Web 应用进程在测试运行之前被终止
有人对我如何实现我想要实现的目标有任何建议吗?
【问题讨论】:
标签: asp.net asp.net-mvc visual-studio visual-studio-2017 visual-studio-mac