如何将参数传递给黄瓜 + Maven 项目,以便它们可以在测试中使用?

Flo*_*lla 0 cucumber maven

当我运行它时,我需要能够将用户名和密码传递给我的测试套件。我不确定这样做的最佳方法是什么。

我的项目使用 Cucumber 在 Java 上运行,使用 Maven。

如果它只是一个 java 项目,我可能会有一个 main 方法,我可以在其中获取执行项目时传递的参数。但是因为这里有黄瓜,有它的特性文件,然后是一些用于测试实现的 java 类,我不知道该怎么做。

Tho*_*erg 6

假设您使用

mvn test
Run Code Online (Sandbox Code Playgroud)

现在您要为执行添加用户名和密码。

这样做的一种方法是

mvn test -DuserName=foo -Dpassword=bar
Run Code Online (Sandbox Code Playgroud)

用户名在哪里 foo和密码bar

下一个任务是获取代码中的值。这是通过读取系统属性来完成的:

String userName = System.getProperty("userName");
String password = System.getProperty("password");
Run Code Online (Sandbox Code Playgroud)

userName如果值没有正确传递,password将会是null