2

ループを含むテストケースを作成したかったのです。最新のsideflow.js拡張機能を取得し、Selenium オプションでそれをターゲットにしました。その後、Selenium IDE を再起動しましたが、機能しません。

サンプル テストケース:

store|i|1
while|${i}<200|
echo|${i}|
storeEval|i=1*storedVars['i']; i+1|i
endWhile||

次のエラー メッセージが表示されました。

[error] Unexpected Exception: fileName -> chrome://selenium-ide/content/tools.js -> file:///home/imslavko/bin/sideflow.js?1346044911197, lineNumber -> 100

Firefox のバージョン: Ubuntu の場合は 14.0.1

セレン IDE バージョン: 1.9.0

sideflow.js: このページの最新https://github.com/darrenderidder/sideflow/blob/master/sideflow.js

それを機能させる方法は?前もって感謝します。

4

3 に答える 3

2

それ以外の

store|i|1

次のように書きます

store|1|i
于 2012-10-25T16:31:02.107 に答える
1

ループを作成する場合は、次の方法をお勧めします。私はまだ学んでいるので、よくわかりませんが、これは私にとってはうまくいきました。

For i=0; i <= 200; i++  i

break   "${i}" == 200   

Echo    *** "${i}" ***  

endFor
于 2012-10-27T01:35:53.597 に答える
0

これはトリプル配列ルーパーの例です(静的変数を使用しているため、変化することがわかります)

これは私が作成したカスタムです。インクリメンタル変数 (カウンターなど) を格納するための構文に注意してください。

このルーパーは、すべてのオプションを循環します (下の例では、6*5*4=120 のオプションがあります)。各オプションを一度エコーアウトしてから、次のオプションに移動します。

example_array_looper
storeEval   new Date().getTime();   timeStart
echo    ${timeStart}    
storeEval   new Array("1","2","3","4"); toparray
storeEval   new Array("A", "B", "C", "D", "E"); middlearray
storeEval   new Array("i","ii","iii","iv","v","vi");    bottomarray
getEval topindex=0; 
getEval middleindex=0;  
getEval bottomindex=0;  
getEval loopCounter=0;  
while   topindex < storedVars['toparray'].length    
storeEval   topindex    temptop
while   middleindex < storedVars['middlearray'].length  
storeEval   middleindex tempmiddle
while   bottomindex < storedVars['bottomarray'].length  
storeEval   bottomindex tempbottom
echo    javascript{storedVars['toparray'][storedVars['temptop']]+" -> "+storedVars['middlearray'][storedVars['tempmiddle']]+" -> "+storedVars['bottomarray'][storedVars['tempbottom']]} 
getEval bottomindex++;  
getEval loopCounter++;  
endWhile        
getEval bottomindex=0;  
getEval middleindex++;  
endWhile        
getEval bottomindex=0;  
getEval middleindex=0;  
getEval topindex++; 
endWhile        
storeEval   loopCounter loops
echo    Total number of loops is: ${loops}  
storeEval   new Date().getTime();   timeEnd
echo    ${timeEnd}  
storeEval   (${timeEnd}-${timeStart})/1000  scriptRunTime
echo    Total Run Time for Script was: ${scriptRunTime}s    
storeEval   ${scriptRunTime}/${loops}   averageTime
echo    Average Loop Duration was: ${averageTime}s  

私はすべての html タグ付けを削除することにしました (そのため、ギャップは非常に明白なはずです)。StoreEval コマンドは、2 ステップではなく 1 ステップでインクリメンタルとして使用できるため、ループ カウンターを保持するのに最適です。

于 2015-07-07T12:59:47.457 に答える