【问题标题】:How to run tests in rider / visual studio in docker container如何在 docker 容器的 Rider / Visual Studio 中运行测试
【发布时间】:2021-06-30 08:31:37
【问题描述】:

我的集成测试依赖于 redis。他们包含 dockerfile,所以一切都在 CI 中运行。但是,当从测试资源管理器本地运行时,我必须手动启动 redis 容器。

IDE 是否有可能在 docker 容器中自动运行/调试测试,所以当尝试在 IDE 中运行/调试测试(甚至可能使用 dotnet 测试)时,一切都在 docker 中运行?

【问题讨论】:

    标签: c# docker integration-testing


    【解决方案1】:

    目前似乎没有解决方案。

    这是骑手的车票: https://youtrack.jetbrains.com/issue/RIDER-38942 对于视觉工作室:https://developercommunity.visualstudio.com/t/allow-running-unit-tests-in-docker/554907

    有一些技巧可以将调试器附加到测试项目,但所有这些技巧都需要一些手动交互,并且体验不如运行/调试应用程序无缝。

    【讨论】:

      【解决方案2】:

      为什么不手动运行容器?

      1. 在本地机器上安装 docker。
      2. 在您的测试项目中使用 Docker.DotNet nuget 以使用 docker api。
      3. 停止所有容器。
      4. 从您的代码中手动启动您需要的容器。
      5. 运行测试并在每次测试后清除状态。

      这样,您将在测试后获得一个工作环境(所有容器都将运行)。

      【讨论】:

      • 这与问题无关。我想在 docker 中运行测试,而不是在测试中运行 docker
      • "停止所有容器" - 我想在 docker 中运行确实会减少对我的机器的影响,即删除对共享服务的依赖,而不是增加它
      • 我将如何调试以这种方式运行的测试?
      猜你喜欢
      • 2017-05-04
      • 2020-04-22
      • 1970-01-01
      • 1970-01-01
      • 2018-09-21
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多