【问题标题】:Use a variable to fill a field with Cucumber使用变量用 Cucumber 填充字段
【发布时间】:2020-10-23 04:45:18
【问题描述】:

Selenium - Cucumber 可以使用变量来设置值吗?

在我的 Class.Java 中: 我试图创建一个私有变量 (私有字符串用户名 = "x";)

使用二传手 ( public void setUsername(String username).. )

但是当我使用另一个类的 setUsername 时,该值不会改变。

MyClass myVariable = new MyClass ();
myVariable .setUsername("myUsername");
myVariable .setPassword("myPassword");

myVariable 变为“myUsername”,但当“@Before”启动时,即使我更改了值,该值为“x”。

为了项目的目的,变量的值必须是动态的和非静态的。 我可以使用 Config.properties 来执行此操作吗?有办法解决这个问题吗?

非常感谢。

【问题讨论】:

  • 请包含 getter 和 setter 的 Java 代码。
  • 嗨,格雷格,谢谢您的回答。我使用 Config.properties 文件中的数据解决了这个问题。我还有一个问题要问你:我可以从另一个 Java 项目开始黄瓜测试吗?我导出了我的第一个项目(包含 MyClass.Java 和 MyClass.feature),但是当我尝试启动 MyClass.feature 时,它​​没有读取 MyClass.Java 并建议我添加所有步骤)

标签: java selenium authentication cucumber gherkin


【解决方案1】:

"myUsername" 是文字字符串。如果你想传递变量,它应该是myVariable.setUsername(username);我猜你提供的代码。

另外,如果myVariable.setUsername 之间的空格在您的代码中,它将不起作用。

【讨论】:

  • 您好 ou_ryperd,谢谢您的回答。我使用 Config.properties 文件中的数据解决了这个问题。我还有一个问题要问你:我可以从另一个 Java 项目开始黄瓜测试吗?我导出了我的第一个项目(包含 MyClass.Java 和 MyClass.feature),但是当我尝试启动 MyClass.feature 时,它​​没有读取 MyClass.Java 并建议我添加所有步骤)
猜你喜欢
  • 2020-03-09
  • 2013-04-17
  • 1970-01-01
  • 2022-01-26
  • 2016-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多