#はじめに
この記事はエムスリーキャリア Advent Calendar 2019 13日目の記事です。
この記事ではSelenium WebDriverのラッパーであるSelenideを使ってブラウザ操作をサクッと試してみます。
#対象読者
- とりあえずブラウザの自動操作を試してみたい人
- JavaでUIテストを書いてみたい人
- ブラウザ操作を行うツールを作成したい人
#開発環境の準備
それではまず開発環境の準備から始めていきます。
IDEにはeclispeを使用します。
https://mergedoc.osdn.jp/よりJava Full Editionをダウンロードし、任意の場所に解凍します。
解凍が完了したら、eclipse.exeを起動します。
#selenideの準備
次にGradleプロジェクトを作成します。
プロジェクトが作成されたらbuild.gradleに以下の一文を追加します。
testCompile 'com.codeborne:selenide:5.5.1'
以上で環境の準備は完了となります。
#実行
最後にGradleプロジェクトを作成した際に/[プロジェクト名]/src/test/java/[プロジェクト名]/LibraryTest.javaが作成されているので、元々の処理をコメントアウトし、以下のように書き直します。
/*
* This Java source file was generated by the Gradle 'init' task.
*/
package selenideSample;
import static com.codeborne.selenide.Selenide.*;
import org.junit.Test;
public class LibraryTest {
@Test public void testSomeLibraryMethod() {
// Library classUnderTest = new Library();
// assertTrue("someLibraryMethod should return 'true'", classUnderTest.someLibraryMethod());
open("https://www.yahoo.co.jp/");
}
}
さて、いよいよ実行します。
LibraryTest.javaのファイルを右クリックし、JUnitテストを実行します。
実行が成功すると新しくchromeが起動され、Yahooの画面が表示されることを確認できます。(一定時間が経過するとブラウザは自動的に閉じられます)
#後書き
コード上でブラウザ操作実現する環境が簡単にできました。
今回は指定したURLを開いただけでしたが、他にもテキストボックスへの入力やプルダウンの選択、チェックボックスのチェックなど一般的なブラウザ操作全般をコードで記述できるのでとても便利です。
私は業務では大量のテストデータをブラウザ上から作成するときなどに活用しています。
selenideは公式リファレンスも充実しているので是非ご活用いただければ幸いです。
#参考
https://selenide.org/quick-start.html
https://qiita.com/tatesuke/items/589e30ab9b3dc7037e26