イチから分かる、テスト自動化とSelenium

2014/03/06
Pocket

今日は、テスト自動化と、ブラウザ自動テストツールSeleniumについて、知らない方でも分かるようイチから解説したスライドを作ったのでご紹介します。

このスライドは、2014年2月28日に開催された「Enterprise × HTML5 Conference」の発表スライドに、時間の関係で省略した多数の未発表ページを加えたものです。

イチから分かる解説についてはこれで終わりですが、せっかくですのでスライドの見どころをご紹介しましょう。

目次

  1. ビジネスにおけるテスト自動化の価値
  2. Seleniumと関連ツール群の紹介
  3. テスト自動化を成功させるために

ビジネスにおけるテスト自動化の価値

テストを自動化する目的については色々あるかと思いますが、スライドでは、ビジネスのスピードを加速させるという点に絞って説明しています。

近年のビジネスのトレンド

Webシステムはどうあるべきか

テストはどうあるべきか?

Seleniumと関連ツール群の紹介

スライドでは、Seleniumの他に周辺ツールなどの様々な関連トピックについても説明しています。

まずはモバイルテスト。スマートフォンの普及やデバイスの多様化に伴い、Seleniumにおいても「モバイル」は重要なテーマとなっています。

モバイルテスト

サードパーティ製のツールの中から、iOSとAndroidの両方で使えるAppiumを取り上げました。

モバイルテスト Appium

続いて、カンファレンスの主題でもあった「HTML5」。

HTML5アプリケーションの特徴の1つに、ページ遷移を伴わず単一ページ内で処理を完結する「シングルページアプリケーション(SPA)」ということがあげられ、カンファレンスでもSPAというキーワードが各所で使われていました。

SPAにおいてSeleniumをどのように活用していくかも、今後考えていかなければならない課題だと感じました。1

HTML5

言語は限定されますが、CapybaraGebを使うとスクリプトをより簡潔に記述できます。

もっと書きやすく

Selenium以外のOSS(オープンソースソフトウェア)と組み合わせることで、もっと色々なことができます。

もっと多機能に

続いてJenkins

JenkinsがSeleniumの機能を補完するというより、Jenkinsが呼び出す様々なツール群の1つにSeleniumがあるというのが正しい位置付けです。

Jenkins

複数端末での並列実行により、テスト時間を短縮できます。

複数の端末を使ったテスト

「クラウド」×「Selenium」の組み合わせも、今後より普及していくのではないでしょうか。

クラウドの活用

PhantomJSは、ここ数年で筆者の周囲でも耳にすることが増えました。

ヘッドレスブラウザ

これらの各トピックについては、また機会をみて掘り下げていきたいと思います。

テスト自動化を成功させるために

最後に、テストを自動化する上での注意点。

よくある誤解として、この3つを取り上げました。

テスト自動化マネジメント3つの誤解

[誤解1]自動化すれば、テストのコストがかからない

[誤解2]全テストをSeleniumで自動化すればいい

[誤解3]記録機能で、誰でも簡単にスクリプトが作れる

テストの自動化は大変ですが、うまく組織に浸透させることで大きなメリットが得られると思うのです。

なんのためにテストを自動化するのか

まずはオープンソースを使って、小さく始めてみてはいかがでしょうか。

どこから自動化すればよいか?

Pocket

注釈・出典
  1. 具体的には、Wait処理をどのように記述するか、単一ページのページオブジェクトをどのように作成するか、といった点が課題になると感じています。 []
    

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です