Selenium IDE で配列を使うには?

基本的に、for each を使用すると配列にアクセス出来ますが、個別に index を指定してアクセスする時は、java script を使用します。

execute script|return ${colors}[${index}]|item

 

Java script から、store された変数にアクセスするには、${colors} を指定します。

さらに配列のインデックスを指定するには、 ${colors}[${index}] となります。

Running 'for each'
20:45:14
1.executeScript on return["red", "blue", "yellow"] with value colors OK
20:45:15
2.store on 0 with value index OK
20:45:15
3.forEach on colors with value color OK
20:45:15
4.executeScript on return ${colors}[${index}] with value item OK
20:45:15
echo: red
20:45:15
echo: red
20:45:15
7.executeScript on return +${index}+1 with value index OK
20:45:15
echo: blue
20:45:15
echo: blue
20:45:15
echo: yellow
20:45:16
echo: yellow
20:45:16
8.end OK
20:45:16
'for each' completed successfully

 

 

 

 

Selenium IDE でチェックボックス(CheckBox)の状態を確認するには?

verify checked id=xyz を使用します。or verify not checked

Selenium IDE 特定のページに文字列が存在しない事をチェックするには?

 

存在しないはずの文字列を指定します。今回は ”xpath”

//*[contains(*,’xpath’)]

Selenium IDE にて

store xpath count     //*[contains(*,’xpath’)]     count

xpath の結果件数を取得します。

verify count     count    0

件数が0件であれば存在しないと判断できます。

Selenium IDE 複数のXPATHで OR の結果を取得するには?

 

https://www.google.com/search?q=xpath&oq=xp&aqs=chrome.0.69i59l2j69i57j69i60l3.2631j0j4&sourceid=chrome&ie=UTF-8

上記の結果から

 

/html/body[@id=’gsr’]/div[@id=’main’]/div[@id=’cnt’]/div[@id=’rcnt’]/div[@id=’center_col’]/div[@id=’res’]/div[@id=’search’]/div/div[@id=’rso’]/div[@class=’MjjYud’][1]/div[@class=’g Ww4FFb vt6azd tF2Cxc’]/div[@class=’kvH3mc BToiNc UK95Uc’]/div[@class=’Z26q7c UK95Uc jGGQ5e’]/div[@class=’yuRUbf’]/a/h3[@class=’LC20lb MBeuO DKV0Md’]

/html/body[@id=’gsr’]/div[@id=’main’]/div[@id=’cnt’]/div[@id=’rcnt’]/div[@id=’center_col’]/div[@id=’res’]/div[@id=’search’]/div/div[@id=’rso’]/div[@class=’MjjYud’][2]/div[@class=’g Ww4FFb vt6azd tF2Cxc’]/div[@class=’kvH3mc BToiNc UK95Uc’]/div[@class=’Z26q7c UK95Uc jGGQ5e’]/div[@class=’yuRUbf’]/a/h3[@class=’LC20lb MBeuO DKV0Md’]

上記の2つの要素を取得します。

上記の文を | で結合する事で、OR を取得する事ができます。

Selenium IDE で指定する時は、

click xpath=//AAA | //BBB の形で指定する事で、例えばPC版のボタンとスマフォ版のボタンが違っていても指定する事ができます。

chrome で xpath を求めるには、 拡張機能の xpath helper を使うと SHIFT を押しながらマウスを指定すると特定する事が出来ます。

違うスクリプトで、other_store_value を store していると仮定して、

一度、変数の ${other_store_value} を変数 abc に保存します。

もしも、other_store_value が store されていなと、そのまま文字列となるので、

${abc} === ” ${other_store_value}” かをチェックして、処理を分岐できます。

ちょっと、泥臭いですが…

 

自分の環境では、Export 機能はエラーが出て上手く動作しませんでした。

*.side ファイルを調べると内容はJSONファイルなので、

“tests”: [

{

“id”: “d4be14a3-316b-4d41-bf05-693bdc536989”,

“name”: “test_a”, “commands”: [{

・・・

・・・

},

{

},

{

 

複数のテストがJSONで構成されているだけなので、上記の id と name が含まれるブロック(”{”から”}”まで)をコピーして、id, name を変更してコピペすると取り込む事ができます。

id と name は、多分ユニークであれば良いのかなぁと… (未確認)

© 2024 Falco Tech Blog Suffusion theme by Sayontan Sinha