Ruby 如何将散列值传递到注册表中的字段中?
我是自动化测试新手,没有Ruby或任何其他编程语言的经验。然而,我现在的雇主希望我开始自动化小任务。我遇到的问题是,试图将散列值传递到注册表的字段中时 这是我的小黄瓜场景: when语句左侧是我要传递某个值的字段的名称。前两个是输入字段。最后一个散列“age”是一个下拉列表 有没有人能帮我一个ruby方法的例子,根据上面的信息填写这样的注册表Ruby 如何将散列值传递到注册表中的字段中?,ruby,cucumber,watir,gherkin,Ruby,Cucumber,Watir,Gherkin,我是自动化测试新手,没有Ruby或任何其他编程语言的经验。然而,我现在的雇主希望我开始自动化小任务。我遇到的问题是,试图将散列值传递到注册表的字段中时 这是我的小黄瓜场景: when语句左侧是我要传递某个值的字段的名称。前两个是输入字段。最后一个散列“age”是一个下拉列表 有没有人能帮我一个ruby方法的例子,根据上面的信息填写这样的注册表 另外,我使用的自动化框架由Ruby、Cucumber和Watir Webdriver组成。以下代码未经测试,但类似的代码应该适合您 # Step def
另外,我使用的自动化框架由Ruby、Cucumber和Watir Webdriver组成。以下代码未经测试,但类似的代码应该适合您
# Step definition
Given /^I enter the following credentials$/ do |table|
# .drop(1) is to get rid of your first row with titles
table.drop(1).each_pair do |setting, value|
browser.element(name: setting).to_subtype.set(value) }
end
end
小心使用小黄瓜作为编码的替代品。它应该专注于你想要达到的目标,而不是你想要达到的方式
我建议如下一种情况:
Given RegularJohn is on the create account page
When he submits the create account form with his information
Then the successfully created message should display
请注意,在您的代码中,您需要RegularJohn
作为一个配置变量,并填充预期的信息
当您尝试测试失败时,您可以使用不同的变量,如
badeEmailAndy
。通过这种方式,您可以保持其可读性、可维护性和可理解性。答案将取决于页面HTML以及您是否也在使用页面对象框架。通常,您将迭代每个键值对以查找字段并输入值。例如,如果第一列与元素id匹配,则可以有data.each_pair{| setting,value | browser.element(id:setting).to_subtype.set(value)}
。虽然理想情况下,您应该有一个页面对象框架,它可以实现像页面这样简单的功能。用(值)
填充。\u。请添加一些有关您正在处理的网页的信息,以及是否使用页面对象框架?