2012-03-14 48 views
1

我對Ruby和一般的Web測試相當陌生。我的公司在watir中已經擁有了大部分自動化功能,目前我正在將其切換到watir-webdriver。文件不是很熱,所以我一直在補充。我很難找到特定的表格。我能確定,如果一個表存在,現在是簡單地看錶頭和單元格,像這樣的唯一方法:如何使用watir-webdriver查找特定表格

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

我不知道如何讓表身變成一個變量,然後操縱它的標題,行,部分等。

其實,我在寫這篇文章時有一種想法,但看起來並不那麼熱。我能做

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

有什麼建議嗎?

回答

2

像這樣的東西應該工作:

b.tables.find{|table| table.th(:text=>"Blah").exists?} 
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

+0

是啊,這是我的理想的答案,但我的表對他們絕對沒有任何標識。這很愚蠢。我也許可以使用索引,但我對此不太舒服。 – techgnosis 2012-03-21 00:22:01

+0

如何迭代頁面中的所有表格?謝謝。 – stack1 2015-06-23 23:03:12

+1

@ stack1,也許你正在尋找'browser.tables.each'?如果沒有,我會建議打開一個新的問題,其中包括您正在使用的HTML和確切的問題。 – 2015-06-24 14:30:00

相關問題