【Selenium】手動で行った動作を記録して、何度も実行させたい
Motivation
社内向けシステムの品質が悪く、何度も何度もクリック・キーボード操作をさせるGUIがあまり得意ではない
ということで、ブラウザで行う動作をSeleniumを用いて半自動化したい
ただ、いきなりSeleniumAPIをばしばし叩くのも、ハードルが高いと思ったので
行った操作をスクリプト化できたらいいな、という発想
導入
Firefox向けSeleniumプラグイン: Selenium IDE
下記画面が表示されるので、「Firefoxへ追加」を押下
使ってみた(GIF)
JSON形式で操作一覧が出力される
commandsってところが、実行している操作の一覧みたい
pythonとかnodejs用にexportできればいいのだけど
{
"id": "702a91c3-409c-4014-afe4-9b6686858cb1",
"name": "test_selenium",
"suites": [
{
"id": "3522401c-a5eb-480f-8d61-a8671251c4c3",
"name": "Default Suite",
"tests": [
"de2effc2-81c4-438c-b6f1-266d97ec6ed1"
]
}
],
"tests": [
{
"commands": [
{
"command": "open",
"comment": "",
"id": "3fa1e5dd-51a6-4fe7-b76e-65e8d66b15e6",
"target": "/search",
"value": ""
},
{
"command": "type",
"comment": "",
"id": "d08aa09d-ab8d-49af-b50c-c290e5952fc5",
"target": "id=lst-ib",
"value": "qiita"
},
{
"command": "sendKeys",
"comment": "",
"id": "2d530f8a-0158-4016-b2ef-ac236f742e6b",
"target": "id=lst-ib",
"value": "${KEY_ENTER}"
},
{
"command": "clickAt",
"comment": "",
"id": "a81db28d-4209-412c-a51b-6a270cdd24c1",
"target": "css=h3.r > a",
"value": "18,13"
},
{
"command": "mouseOver",
"comment": "",
"id": "8215a23a-9504-4ed1-856a-90f796ce0999",
"target": "css=h3.r > a",
"value": ""
}
],
"id": "de2effc2-81c4-438c-b6f1-266d97ec6ed1",
"name": "Untitled"
}
],
"url": "https://www.google.com",
"urls": [
"https://www.google.com"
]
}
まとめ
Seleniumで自動化する際に、要素のIDとか気にせず直感的に操作を吐き出せるのは◎
ただし、この記事を書くために使用した際に、操作を取得できないことが頻発した
それも歯抜けで取得はできるから、途中の操作がなくて結局次の操作につながらないことがあった
Author And Source
この問題について(【Selenium】手動で行った動作を記録して、何度も実行させたい), 我々は、より多くの情報をここで見つけました https://qiita.com/iaoiui/items/f29c17158c32c8a14b16著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .