在可执行的Docker镜像上创建黄瓜测试

问题描述 投票:0回答:2

我想知道如何在Docker可执行映像上创建黄瓜测试?

public class GenerateNumber {
    public static void main(String[] args) {
        if (args != null && args.length > 0) {
            String input = args[0];

            if(input.equals("ODD")) {
                //GENERATE ODD NUMBERS FROM 0 TO 1000
            }else {
                //GENERATE EVEN NUMBERS FROM 0 TO 1000
            }
        }
    }
}

假设我有这个简单的类文件...我将它打包成一个可执行的Jar文件,并使用这个类作为我的应用程序的入口点。 java文件被部署为将运行我的类的容器化图像。

现在,从Cucumber Test的角度来看,如何为这种情况创建步骤定义文件?

这是码头图像对吗?我想出一个如何进行这项测试的策略。来自有类似要求的人的任何提示?

docker cucumber cucumber-java cucumber-junit
2个回答
1
投票

如何连接到您的示例取决于您何时要验证它是否有效。

我的策略是在应用程序的构建期间执行此操作。这减少了Docker的等式,任何关于Cucumber的Java教程都将适用。我的博客上有很多tutorials。也许this帖子可以提供一些帮助。使用现代版本的工具。

如果要在Docker中运行应用程序时从Cucumber步骤连接到应用程序,则需要一些方法来进行连接。这与从外部连接到任何服务器应用程序相同。一个例子可以是从Cucumber步骤驱动Selenium并验证Web应用程序。这个post可能有助于理解如何验证不同类型的应用程序。有点过时,但想法保持不变。


0
投票

有点难以理解你想要实现的目标

如果您的docker镜像是一个执行的“黑盒子”,并且您需要分析结果,则必须构建一个可在主机上执行的单独的黄瓜测试项目。

黄瓜步骤定义方法可以调用可以启动docker镜像,登录到容器,拉出文件,读取日志等的方法,然后可以对其进行断言。您可以使用Spotify docker客户端库来执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.