【发布时间】:2019-03-22 05:57:21
【问题描述】:
我已经创建了微服务应用。
每个微服务都经过单元测试。
现在,在我开始构建前端和更复杂的集成之前,我想使用 docker 制作集成服务器。
我知道如何创建 docker-compose fie,它将旋转我的所有服务进行测试,但我不知道您如何运行集成测试?
您是创建另一个服务进行测试,然后在内部调用 jest /integration 还是使用 docker 命令来处理它?
现在,我为单元测试创建了一项服务,以查看是否一切都正确设置 docker 明智,并且一切正常。
我想自动化一切,这样当我推送 bitbucket 时,我可以将我的存储库与 bitbucket 管道或更好的 docker-hub 连接以运行我的测试,包括单元测试和集成测试。
【问题讨论】:
-
不能只从应用程序容器中运行集成测试,您在 docker-compose 中连接了服务依赖项吗?除非您正在谈论完全端到端的测试,如果您需要在 QA 中进行,您也可以通过更改集成测试的主机来完成。
-
我目前的解决方案是创建一个容器来运行集成测试,它将依赖于其他服务,所以它会从最后开始
-
所以我想主要问题是在容器内还是在容器外运行测试?容器内部为您提供了一些好处,例如不必为本地环境中的测试安装包依赖项,并且可以很好地隔离各种环境,所以如果这是您的主要问题,我不明白为什么不这样做。我设置它的方式是为您要部署的映像使用多阶段构建,并分离可能包含测试依赖项的映像以运行测试(单元和集成)。
-
我会接受这个答案
标签: javascript docker continuous-integration integration-testing microservices