我想知道如何在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的角度来看,如何为这种情况创建步骤定义文件?
这是码头图片对吗?我想出一个如何进行这项测试的策略。 来自做过类似要求的人的任何提示?
答案 0 :(得分:1)
如何连接到您的示例取决于您何时要验证它是否有效。
我的策略是在应用程序的构建期间执行此操作。这减少了Docker的等式,任何关于Cucumber的Java教程都将适用。我的博客上有很多tutorials。也许this帖可以提供一些帮助。使用现代版本的工具。
如果要在Docker中运行应用程序时从Cucumber步骤连接到应用程序,则需要一些方法来进行连接。这与从外部连接到任何服务器应用程序相同。一个例子可以是从Cucumber步骤驱动Selenium并验证Web应用程序。此post可能有助于了解如何验证不同类型的应用程序。有点过时了,但这些想法保持不变。
答案 1 :(得分:0)
很难理解您要实现的目标
如果您的docker映像是一个执行的“黑匣子”,并且您需要分析结果,则必须构建一个单独的在主机上执行的黄瓜测试项目。
黄瓜步骤定义方法可以调用一些方法,这些方法可以启动docker映像,登录到容器,拉出文件,读取日志等,然后可以对其进行断言。您可以使用Spotify泊坞窗客户端库执行此操作。