如何使用watir-webdriver查找特定表

时间:2012-03-14 20:44:47

标签: ruby webdriver watir-webdriver

我对Ruby和Web测试一般都很陌生。我的公司已将其大部分自动化功能用于watir,而我目前正在将其转换为watir-webdriver。文档并不是那么热门,所以我随时都在努力。我找不到特定的桌子很困难。我现在可以识别表是否存在的唯一方法是简单地查找表头和单元格,如下所示:

b.th(:text=>"Blah").exists?
b.td(:text=>"Hrrrgg").exists?

我不知道如何将表格本身变为变量,然后操纵其标题,行,部分等。

实际上,我在写这篇文章的过程中有一种方法,但它看起来并不那么热。我能做到

#(header->row->section->table)
b.th(:text=>"Blah).parent.parent.parent 

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

这样的事情应该有效:

b.tables.find{|table| table.th(:text=>"Blah").exists?}

答案 1 :(得分:0)

您可以查找与表格标题和单元格相似的表格,但请改用.table

例如,你可以这样做:

b.table(:id, 'tables_id').exists?   #=> Finds table with id 'tables_id'
b.table(:index, 0).exists?          #=> Finds first table

您可以获取原始Watir here的元素和定位器列表。 Watir-Webdriver几乎应该是一样的。但您可以随时仔细检查API文档here