Microservice architecture is the common choice for cloud applications these days since each individual microservice can be independently modified, replaced, and scaled. However, the complexity of microservice applications requires automated testing with a focus on the interactions between the services. While this is achievable with end-to-end tests, they are error-prone, brittle, expensive to write, time-consuming to run, and require the entire application to be deployed. Integration tests are an alternative to end-to-end tests since they have a smaller test scope and require the deployment of a significantly fewer number of services. The de-facto standard for deploying microservice applications in the cloud is containers with Kubernetes being the most widely used container orchestration platform. To support the integration testing of microservices in Kubernetes, several tools such as Octopus, Istio, and Jenkins exist. However, each of these tools either lack crucial functionality or lead to a substantial increase in the complexity and growth of the tool landscape when introduced into a project. To this end, we present \emph{Bunk8s}, a tool for integration testing of microservice applications in Kubernetes that overcomes the limitations of these existing tools. \emph{Bunk8s} is independent of the test framework used for writing integration tests, independent of the used CI/CD infrastructure, and supports test result publishing. A video demonstrating the functioning of our tool is available from \url{https://www.youtube.com/watch?v=e8wbS25O4Bo}.
翻译:微观服务架构是云层应用的常见选择,因为每个微观服务都可独立修改、替换和扩展。然而,微观服务应用程序的复杂性需要自动测试,重点是服务之间的相互作用。尽管通过端到端测试可以实现这一点,但是它们具有易出、易碎、耗时、运行费高、需要全部应用。整合测试是端到端测试的一种替代选择,因为它们的测试范围较小,需要部署的服务数量要少得多。在云中部署微观服务应用程序的 de-facto标准是库贝内特的容器,而库贝内特是最广泛使用的集装箱管弦平台。要支持库贝内特的微观服务整合测试,则存在一些工具,如Octopus、Istio和Jenkins。然而,这些工具要么缺乏关键功能,要么导致在引入项目时工具的复杂程度和增长大幅增长。至此,我们为此端展示了http://emph{Bunk8} 库贝涅茨运行工具的整合测试工具工具工具的一个工具。用于库伯内特内斯运行运行工具的独立测试。