SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

WebDriverの採用で生まれ変わったOSSのブラウザテストツール「Selenium 2」入門

「Selenium2」のインストール手順と初めの一歩

WebDriverの採用で生まれ変わったOSSのブラウザテストツール「Selenium2」入門 第2回

  • X ポスト
  • このエントリーをはてなブックマークに追加

4 WebDriverの使い方

 以下に基本的な使い方をまとめました。記事にサンプルコード(GoogleTest.java)を添付していますので、参考にしてください。

4.1 ブラウザの起動・終了

// ブラウザの起動
WebDriver driver = new FirefoxDriver();
// ブラウザの終了
driver.quit();

4.2 URLを指定してページを開く

driver.get("https://www.google.co.jp/");

4.3 要素を取得する

// id属性で指定
WebElement element = driver.findElement (By.id("lst-ib"));
// name属性で指定
WebElement element = driver.findElement(By.name("q"));
// リンクテキストで指定
WebElement element = driver.findElement(By.linkText("Selenium - Web Browser Automation"));
// CSSセレクタで指定
WebElement element = driver.findElement(
By.cssSelector("#header li:nth-of-type(1)"));

4.4 クリックする

element.click();

4.5 文字を入力する

element.sendKeys("Selenium");

4.6 値を検証する

 WebDriverで値を取得してJUnitで検証を行います。

String actual = driver.findElement(By.cssSelector("#header li:nth-of-type(1)")).getText();
assertEquals("タブ名がAboutであること", "About", actual);

4.7 スクリーンショットをとる

 基本的には、スクロール部分を含めて1枚の画像として取得することができます。

File screenshotFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileHandler.copy(screenshotFile, new File("./screenshot001.png"));

 ここで取得したスクリーンショットは「screenshotFirefox.png」としてサンプルファイルに同梱してあります。

スクリーンキャプチャの不具合について

 2013年10月現在、以下のケースでスクロール部分がキャプチャできない不具合が報告されています。

5 主な情報源

6 終わりに

 第2回では、Selenium IDEとSelenium WebDriverのインストールと簡単な使い方、メジャーなブラウザ(IE、Chrome、Firefox)での動作確認方法についてご紹介しました。初めてSeleniumに触れた方も、Selenium自体は簡単だと感じていただけたのではないでしょうか。 次回以降はSeleniumを活用していく上でポイントとなる点についてご紹介していきます。第3回は「Jenkins連携による継続的インテグレーション」です。どうぞお楽しみに。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
WebDriverの採用で生まれ変わったOSSのブラウザテストツール「Selenium 2」入門連載記事一覧

もっと読む

この記事の著者

丸山 和子(株式会社DTS)(マルヤマ カズコ)

株式会社DTS イノベーション推進部在籍。業務内容は、システム開発に役立つ技術の調査・研究。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/7456 2013/11/08 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング