SHOEISHA iD

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

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

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

Excelマクロによる、seleniumテストケースの自動生成

Excelマクロによる、seleniumテストケースの自動生成(3)

表示内容の検証ケースも自動生成

テストケースの自動生成

サンプルケース

 以下のケースをサンプルに、テストケースを自動生成してみましょう。

  • (1)Yahoo!トップ画面を開く
  • (2)検索ワードに「郵便番号検索」と入力
  • (3)検索ボタンをクリック(検索結果画面に遷移)
  • (4)検索ワードの値が「郵便番号検索」であるかチェック(verifyValue)
  • (5)検索結果の1件目のコメントに"地図や住所、郵便番号から"の文字列が含まれるかチェック(verifyText)
  • (6)画面上のどこかに"ゆうパック"の文字列が含まれるかチェック(verifyTextPresent)

入力値一覧へ反映

 前回のseleniumテストケース自動生成マクロの入力値シートを次のように修正します。なお、表内の"★"については、以下のコラム『「対象」を可変にするには』を参照してください。

 
 (5)の値の「*」はパターンマッチング

自動生成マクロを実行

 自動生成マクロの実行方法は、前回記事を参照してください。

生成されたCase1のテストケース(HTML)
コマンド 対象
open http://yahoo.co.jp  
type srchtxt 郵便番号検索
clickAndWait srchbtn 選択
verifyValue yschsp 郵便番号検索
verifyText //div[@id='yschjword']/div/div[2] *地図や住所、郵便番号から*
verifyTextPresent ゆうパック  
「対象」を可変にするには
 自動生成マクロは、基本はseleniumの「値」をテストケースごとに可変にして、自動生成できるように作られています。しかし、コマンドによっては「対象」を可変にしたい場合があります。たとえば、画面上に"ゆうパック"の文字列があるかをチェックする場合、verifyTextコマンドでは、「対象」に文字列"ゆうパック"を入れる必要があります。
それを可能にするために、入力値一覧では、文字列"ゆうパック"をいったん「値」に格納しておき、マクロで「対象」の"★"を「値」の"ゆうパック"に置換します。
    入力値シート
    コマンド 対象
    verifyTextPresent ゆうパック
↓自動生成マクロ 「対象」の"★"を「値」の"ゆうパック"に置換↓
    生成されたHTML
    コマンド 対象
    verifyTextPresent ゆうパック  

seleniumIDEから実行

 selenium IDEの「メニュー」-「ファイル」-「テストスイートを開く」で、生成した郵便番号検索suite.htmlを選択してください。実行してみましょう。

図1:テストケース実行結果(すべてTRUE)
図1:テストケース実行結果(すべてTRUE)

 このようにコマンドが成功すると、typeやclickなどのAction系コマンドは薄緑色で、verifyなどのAssertion系コマンドは濃緑で表現されます。

 失敗した場合は、次のように、赤で表現されます。

図2:テストケース実行結果(1件FALSE)
図2:テストケース実行結果(1件FALSE)

おわりに

 いかがでしたでしょうか? 何も新しいことはありません。実際の案件に適用するには、この入力値一覧に反映するのは難しいかもしれません。ぜひ工夫しながらやってみてください。

 次回は、seleniumへのユーザー拡張スクリプトの追加と、改竄対策のテスト(※)の自動化について説明します。

 ブラウザでオブジェクトの属性を改竄された場合サーバサイドでエラー処理されることを確認するテスト。

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

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
Excelマクロによる、seleniumテストケースの自動生成連載記事一覧

もっと読む

この記事の著者

中谷 泰敏(ナカタニ ヤストシ)

web系のシステムエンジニア。seleniumは2007年から利用。便利なものをもっと便利に。メール:yasutoshi.jpあっとgmailドットcom

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

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

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/2672 2008/09/05 11:26

イベント

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

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

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

メールバックナンバー