AUT在顶部导航栏中有链接。在正常使用期间,每个链接都会在不同的浏览器中打开相关的应用程序。
是否可以在新应用程序上执行简单的页面标题断言,然后返回AUT并单击下一个链接?等等每个链接?
对于测试,我认为链接目标是在新浏览器,新选项卡还是相同选项卡中打开并不重要。只要我可以在AUT和“其他”应用程序之间前后跳转。
答案 0 :(得分:0)
如果没有样本HTML,这在黑暗中有点像。但是 - 假设有一个独特的属性可以挂钩 - 你可以从导航div收集链接并迭代每个链接。这是一个简单,人为的例子(链接不会产生新的浏览器/标签):
b = Watir::Browser.new
b.goto("http://www.iana.org/domains")
nav_link_hrefs = b.div(:class, "navigation").links.collect { |link| link.href}
nav_link_hrefs.each do |href|
next if href == "http://www.iana.org/domains" # skip self-referential link
b.link(:href => href).click
b.back
end
在进行“简单页面标题断言”方面,我不确定你如何提前知道页面标题。但我建议调查MiniTest或rspec以获取断言库。
最后 - 如果您的用例需要窗口切换 - 请查看watir-webdriver window-switching documentation。
答案 1 :(得分:0)
我找到了答案。这是部分代码:
@browser.goto URL
current_url = @browser.url
new_window_url = @browser.link(:text, "Other site").href
@browser.goto(new_window_url)
# test the other site
assert(@browser.text.include?("This is the other site"))
@browser.goto(current_url) # back to the first site
# repeat for all the other navigation links