2010-06-08 180 views
1

使用Watir迴歸測試一些更改:我想在典型舊式網頁菜單中「點擊」一行,其中菜單是一張表格表格。在這個特定的例子中,表格單元格包含菜單項目,並且僅由一個單元格組成的行具有onclick處理程序。我以爲我可以如何在Watir中找到特定表格單元格

cell = browser.element_by_xpath("//div[@id='Menu']/descendant::td[text()='New!'") 

,並使用電池來獲取父行,但我得到的消息

C:/ruby/lib/ruby/1.8/rexml/parsers/xpathparser.rb :330:在 '上游':未定義 方法`[]」爲零:NilClass(NoMethodError)

這使得沒有意義的我。

+1

請發佈相關的HTML。錯誤消息說你正在做'nil []'。此外,看起來你忘記關閉打開'['。 – 2010-06-10 09:19:41

回答

1

我們真正需要的,然後才能給出一個答案

一般來說有幾個方法來處理表之前更多的細節。如果總是相同的話,你可以使用絕對索引來表示行號和列號,但很多情況並非如此。

如果行上有已知(唯一)文本,並且單元格的列已知,那麼通常可以通過使用正則表達式來識別具有已知(和唯一)文本的行,然後通過行內的'列'來識別所需的單元格。

browser.row(:文本,/我的搜索文本/)細胞(:指數,2)包含由正則表達式匹配的文本行中的#第二小區

1

試試這個

cell = browser.div(:id,'Menu').cell(:text,'New!') 
cell.click 

,也許你失去了']'?

cell = browser.element_by_xpath("//div[@id='Menu']/descendant::td[text()='New!']") 
相關問題