2011-08-10 73 views
6

有一個我試圖測試的網頁有多個文本框。我已經到了可以檢索每個文本框中的所有值並將它們存儲到一個數組中的地步,但我仍然不知道如何將這些相同的值再次輸入到文本框中。Selenium IDE - 將存儲在數組中的值輸入到文本框中?

這裏是我迄今爲止在硒:

What I have so far 大圖:http://i.stack.imgur.com/rb93k.png

存儲的變量「計數」簡直是在表中的行數,並不會造成一個問題。我在紅色圓圈的部分是哪裏出了問題進來

當我運行,而不是該索引處輸入數組中存儲的值這個測試,它只是類型:

enter image description here

這一直持續到結束。

變量'i'被正確插入,但出於某種原因而不是抓取該值,它只是將其輸入到文本框中。

有誰知道我可以如何在數組中獲得正確的值?

下面是有問題的行:

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${textBoxArray[${i}]} | 

回答

1

我認爲你需要

javascript{storedVars['textBoxArray['+storedVars['j']+']']} 

,以取代圓圈參考${textBoxArray[${i}]閱讀this blog post更多的信息,尤其是關於「設置和獲取的部分變量。

從文章引述,考慮

store | 10 | x 

這顯然將X = 10。有幾種方法可供參考: $ {x}或storedVars ['x']。他們不一樣。

特別

您不能分配什麼$ {X}。

1

您可以將有問題的行前插入一個多命令:

getEval | storedVars['text'] = storedVars['textBoxArray'][storedVars['i']]; 

和變革問題行:

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${text} 

此外,它很可能是有幫助的聲明數組中開始的測試:

storeEval | new Array() | textBoxArray 
2

我通過機器人測試框架使用Selenium庫。我沒有使用任何IDE,只是用HTML進行測試用例,並確定新的關鍵字。

當過我想訪問列表可變項,我只是使用以下sintaxe

@ {list_variable_name} [0]

注意$ {變量名}是訪問單個值變量或對列表變量的引用。如果我們要訪問列表項,我們需要使用@代替$。

如果我理解你的處境吧, @ {} textBoxArray [$ {I}]應該爲你工作。

也嘗試 $ {textBoxArray } [$ {I}],因爲它似乎你只是misplaycing最後}。

更多詳細信息在 http://robotframework.googlecode.com/svn/tags/robotframework-2.5.4/doc/userguide/RobotFrameworkUserGuide.html#list-variables

相關問題