Motomichi Works Blog

モトミチワークスブログです。その日学習したことについて書いている日記みたいなものです。

windows7+eclipse+Selenium WebDriverその0002(googleのページを開いて、自動で検索を実行する)テキストフォーム入力と送信

参考にさせて頂いたページ

Selenium 2.0 を使ってJavaからWeb画面をテスト - Taste of Tech Topics

Classを作成する

  • File > New > Classの順に選択する
  • NameのところにHogeTestと入力する
  • Finishをクリック

そうするとHogeText.javaが生成されて、

package com.example.tests;

public class HogeTest {

}

みたいな感じで、eclipseでファイル編集ができる。

HogeTest.javaの記述内容

ブラウザを閉じる部分はコメントアウトした。

package com.example.tests;

import java.io.*;
import org.junit.BeforeClass;
import org.junit.Before;
import org.junit.Test;
import org.junit.After;
import org.openqa.selenium.By;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.io.FileHandler;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.support.ui.WebDriverWait;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*;

public class HogeTest {
    private WebDriver driver;

    @Before
    public void setUp(){
      //Firefoxを起動
      driver = new FirefoxDriver();
    }

    @Test
    public void testSample(){
      driver.get("http://www.google.com");
      WebElement element = driver.findElement(By.name("q"));
      element.sendKeys("Cheese!");

      element.submit();
      System.out.println("Page title is: " + driver.getTitle());
    }

    @After
    public void tearDown(){
      //ブラウザを閉じる
      //driver.quit();
    }
}

HogeTest.javaを実行してみる

  • eclipseのPackage Exprolerの中のsrc > com.example.tests > HogeTest.javaを右クリックする。
  • Run As > 1 JUnit Testをクリック
  • しばらく待つとブラウザが落ちたときと同じように、Firefoxは動作を停止しましたが表示される。
  • プログラムを終了しますをクリック
  • しばらく待つと自動でFirefoxが起動して、GoogleのURLへアクセスする
  • 自動でフォームに入力する
  • 自動でsubmitする
  • ページタイトルを取得して、コンソールに出力する

と実行された。

ブラウザを閉じると検索結果のページが見られないので、今回ブラウザは閉じないことにした。

今回はここまで。