selenium IDEを自プロダクトに導入しようとしてみた

背景

テスト自動化を自プロダクトに導入するにあたって色々ツールを選定しているのですが、まずは敷居が低そうな「selenium IDE」から試してみました。

総合結論

自プロダクトには導入しない結論になりました。

導入するための選定基準

A. 導入が簡単にできるか
簡単だとナレッジが共有しやすい、後任にインプットしやすいからです。

B. JavaScriptが使用できるか

テストを実施した日時で、スクリーンショットの名前や値を入力したいからです。

C. スクリーンショットが取得できるか
ツールが出力するレポートでも十分ですが、画面レイアウトが変わった時に、画面をザッと眺めたい時があるからです。

D. CIに組み込むことができるか
毎回の手動実行は辛いからです。


A. 導入が簡単にできるか(ここをみやすくしたい)

結論
できる(10分で導入できて、テストケースも簡単に作れます)

導入環境
・macOS mojave バージョン 10.14.5
・chrome バージョン: 75.0.3770.142(Official Build) (64 ビット)

1. selenium IDEをchromeで使えるようにする
chrome拡張機能(chrome extension)なので以下の手順で追加します。

1-1.  以下にchromeでアクセスします
https://chrome.google.com/webstore/detail/selenium-ide/mooikfkahbdckldjjndioackbalphokd?hl=ja

1-2. 「Selenium IDE」を追加しますか?と聞かれるので、[拡張機能を追加]ボタンを押下します

1-3. [chromeに追加]ボタンを押下します

2. プロジェクトを作成する(テストのまとまりみたいなもの)

2-1. chromeの拡張機能から[Selenium IDE]アイコンを押下します

2-2. [Record a new test in a new project]リンクをクリックします

2-3. [PROJECT NAME]を入力します(ex.temp001)

2-4. [OK]ボタンを押下します

2-5. [BASE URL]を入力します(ex.https://www.google.com/)

2-6. [Start Recording]ボタンを押下します

2-7. 別ウインドウでchromeが立ち上がります(ex.Googleのトップページが表示)

3. テストケースを作成する(ここではGoogle検索のテストケース)

3-1. 2-7. で立ち上がったchromeを表示します

3-2. [検索]テキストボックスに"test"と入力します

3-3. [enter]キーを押下します

3-4. selenium IDEに戻ります

3-5. [stop recording]ボタンを押下します

3-6. [TEST NAME]を入力します(ex.test001)

3-7. [OK]ボタンを押下します

4. テストケースを実行する

4-1. [Run all tests]ボタンを押下します

4-2. 別ウインドウでchromeが立ち上がり、3. テストケースを作成すると同じ動作が確認できます


B. JavaScriptが使用できるか

結論
できない

調査したこと
こちら (※1)の記事を参考にさせてもらったのですが、「StoreEval」がCommand候補に出てこないんですよね…Firefox限定なのでしょうか。
「run Script」も試してみましたが書き方が良くないのかうまくいきませんでした。
(※1)https://qiita.com/jun2014/items/bf6b87699b7622c91326

C. スクリーンショットが取得できるか

結論
できない

調査したこと
「captureEntirePageScreenshot」がCommand候補に出てこないんですよね…「The kantu ide supports」とあるので、kantuというツールを使って!ということなんでしょうか。
https://github.com/SeleniumHQ/selenium-ide/issues/182

D. CIに組み込むことができるか

結論
できる

調査したこと
CLIで実行できるのでできるのではないでしょうか。まだ試してはいません。
https://www.seleniumhq.org/selenium-ide/docs/en/introduction/command-line-runner/

この記事が気に入ったらサポートをしてみませんか?