我们有一个服务网格/kubernetes通过终端工作,显示所有不同的豆荚与其不同的名称空间。在每个吊舱内,您可以在控制台中看到app.jar。
最近,boss/client询问如何从服务mesh/kubernetes命令行为任何特定的JAR运行各种系统集成测试。谷歌说要使用'mvn干净安装‘,'javac’或'java -jar junit-平台-控制台-独立-1.7.2.jar-类-路径目标-选择类‘。这些都是由于各种原因而失败的(mvn不存在,javac不存在,jar说端口正在使用。当然,端口正在使用,前面提到的jar也在使用它)。
当我在Gitlab (或Intellij)中查看一个吊舱时,我看到了它所具有的所有测试。但是我如何从吊舱控制台运行这些系统集成测试呢?理想情况下,运行所有测试的命令会使事情变得容易得多。
编辑: lol在评论中的热度。我和老板澄清了,她说我们希望从服务网格运行系统集成测试,而不是单元测试。这些豆荚并不是孤立的,它们中的一些相互依赖。
发布于 2022-01-05 09:19:40
通常,来自用户约内沙普的评论可以回答以下问题:
作为一个请求,这是没有意义的-您在源代码上运行单元测试,然后构建并部署容器,如果它们通过了。它们甚至不应该包含在部署的jar中。
如果需要测试应用程序,请在部署应用程序之前进行测试。您应该有一个单独的环境来测试您的应用程序,并且只在应用程序正常工作时使用Kubernetes。当然,您可以使用一些CI类型的解决方案。看看这一页- 为Kubernetes托管的应用程序运行带有JUnit CI的GitLab测试。
如果您正在寻找与Kubernetes进行集成测试的解决方案,请编辑,您可以阅读几个文档。这完全取决于您想要测试的具体内容。我提出几种可能性:
https://stackoverflow.com/questions/70584228
复制相似问题