私は初めて Selenium IDE を使用していますが、自動化スクリプトの知識はありません。これまでのところ、IDE を使用して管理できますが、インデックスまたはラベルの値を毎回手動で入力するのではなく、ドロップダウン リストから値をランダムに選択できないという問題が 1 つあります。
誰でもこれで私を助けてくれませんか。
ありがとうございました
私は初めて Selenium IDE を使用していますが、自動化スクリプトの知識はありません。これまでのところ、IDE を使用して管理できますが、インデックスまたはラベルの値を毎回手動で入力するのではなく、ドロップダウン リストから値をランダムに選択できないという問題が 1 つあります。
誰でもこれで私を助けてくれませんか。
ありがとうございました
コマンドselect(selectLocator, optionLocator)
を使用します。「selectLocator」は値が選択されているドロップダウンのIDであり、「optionLocator」は選択されている値です。
たとえばId="//select[@id='type'"
、「TypeA、TypeB、TypeC、...」などの値を持つドロップダウンを言います。ドロップダウンから「TypeA」を選択している場合、コマンドは次のようになります。
selenium.select("//select[@id='type']", "label=TypeA");
これで問題が解決することを願っています。
まず、ドロップダウンのアイテムの総数を取得します。getSelectOptionsを使用して、選択ボックスのオプションの配列を取得します。次に、0(両端を含む)と配列の長さ(両端を含む)の間のランダムな整数を生成します。次に、インデックスロケーターでselectを使用して、ランダムに選択されたオプションを選択します。
使用コマンド: KeyDown 対象:css=input.comboboxname 値: \40
\40 は下矢印の ASCII 値です
次に、\13 を使用して値を選択します (コマンドとターゲットの値を同じにします)。
手早く汚い JavaScript の出発点:
<form>
<select id="mySelect" onchange="myFunction()">
<option>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
</form>
<p id="demo" onclick="myFunction()" >click me</p>
<script>
function myFunction() {
document.getElementById("mySelect").selectedIndex = Math.floor((Math.random() * document.getElementById("mySelect").options.length));
}
</script>
および (ある程度) 対応する seleniumIDE runScript コマンド:
指図
runScript
目標:
document.getElementById("myDropdown").selectedIndex = Math.floor(Math.random() * (document.getElementById("myDropdown").options.length-1))+1);
最後の +1 は完全にオプションです。seleniumIDE が最初のものを選択しないようにするために含めました。