2014-10-01 15 views
0

在幾個地方,我創建一個indexed_property,但是當我把它稱爲,指數始終爲1的Watir PageObject Indexed_Property不使用字符串替換

example screenshot

indexed_property(:team, [ 
    [:span, :team, {css: 'article#AssignTeams-Teams table tr:nth-child(%s) td:nth-child(1) span'}] 
]) 

實現:

assign_teams_page.team[5].team_element 

當我在它上面放置一個斷點並進行調用時,元素的選擇器是:

文章#AssignTeams強隊表TR:第n個孩子(1)TD:第n個孩子(1)跨度

應該是TR:第n個孩子(5),而不是TR:nth-孩子(1)。爲什麼我看到這個,我該如何解決?

+0

你能把一個HTML頁面和整個頁面對象重現問題嗎?我試過使用相同的indexed_property,它對我來說工作得很好。 – 2014-10-01 20:18:35

+0

找到一個元素不是我的問題,%s沒有得到正確的數字。這不應該依賴於實際的頁面,應該嗎? – TIMBERings 2014-10-01 20:32:41

+0

對不起,我沒有認爲這個評論很徹底。您可能是正確的,該網頁無關緊要。我的觀點只是,我們將從一個孤立的腳本中受益,任何人都可以複製並執行以查看問題(至少我無法從當前信息中重現該腳本)。 – 2014-10-01 20:46:59

回答

2

頁面對象1.0.2中存在一個當前的錯誤,它會導致索引屬性保留第一次調用它們時的定義。所以如果你打電話:

assign_teams_page.team[1].team_element 
assign_teams_page.team[5].team_element 

它會每次都使用索引1。有一個修補程序,但尚未發佈。您可以通過降級到頁面對象1.0.0或升級到1.0.3來解決問題。