如何确保使用 watir-rails 单击 link
how to make sure a link is clicked with watir-rails
我正在使用 watir 来执行一些功能
我需要证明 link 实际上被 watir 驱动程序点击了,所以如果 link 被点击为关注:
puts "profile clicked" if click_my_profile_link(browser)
和:
def self.click_my_profile_link(browser)
browser.div(class: "topbar").when_present
.link(class: 'my-profile').click
end
但是当 link 被点击时,控制台不会打印任何内容。这种行为对于我有点击操作的任何地方都是一样的。另一个例子是:
puts "Next button clicked" if browser.input(id: 'next', value: 'Next').fire_event :click
当像这样触发点击操作时,我怎样才能得到某种日志?谢谢
程序方法是为其 action/side-effect 调用的,不应期望有响应。
如果您没有收到错误,则说明 Watir 找到了该元素并向其发送了点击命令。
所以也许这就足够了expect {click_my_profile_link(browser)}.to_not raise_error
通常您编写测试来验证 link 的结果。在这种情况下,类似于 expect(browser.title == "My Profile Title").to be true
您可以创建一个 AfterHook,它会在每次导航和点击后执行额外的操作,但它不会区分这两者,我真的不认为那是您真正想要的。
我正在使用 watir 来执行一些功能
我需要证明 link 实际上被 watir 驱动程序点击了,所以如果 link 被点击为关注:
puts "profile clicked" if click_my_profile_link(browser)
和:
def self.click_my_profile_link(browser)
browser.div(class: "topbar").when_present
.link(class: 'my-profile').click
end
但是当 link 被点击时,控制台不会打印任何内容。这种行为对于我有点击操作的任何地方都是一样的。另一个例子是:
puts "Next button clicked" if browser.input(id: 'next', value: 'Next').fire_event :click
当像这样触发点击操作时,我怎样才能得到某种日志?谢谢
程序方法是为其 action/side-effect 调用的,不应期望有响应。
如果您没有收到错误,则说明 Watir 找到了该元素并向其发送了点击命令。
所以也许这就足够了expect {click_my_profile_link(browser)}.to_not raise_error
通常您编写测试来验证 link 的结果。在这种情况下,类似于 expect(browser.title == "My Profile Title").to be true
您可以创建一个 AfterHook,它会在每次导航和点击后执行额外的操作,但它不会区分这两者,我真的不认为那是您真正想要的。