tsuttieです(*'▽')
今回はテキストの有無の確認方法についてお話しします。
#1. Selenium2を使ってみて
Webアプリのテスト自動化を目的としてSelenium2を使ったので詰まった点を数回に分けてまとめて行きたいと思います。
#2. 使用したSelenium
・Selenium IDE
・Selenium Webdriver (Java 3.5.0)
※導入方法についてはわかりやすくまとめていらっしゃる方が多くおりますので、そのあたりのお話は省きます。
#3. 【本題】画面上に特定の文字列が存在するか確認する。
Seleniumを使用する用途はいくつかあるかと思うのですが、その大半がWEBアプリの動作テストの自動化、もしくは単純作業の自動化だと思います。
そして、その作業を自動化する時に必ず必要になってくるのが、正常系、異常系の判別です。
なにをもって判断するかはその時々によるから後から考えるとして、手段は多いに越したことはないでしょう・・・??
そういう理由から、今回はそれを実現するために
判別のの方法の一つとして特定テキストの認識をできるように整備しておこう。
という話ですね。
Selenium IDEでは、特定のテキストの有無によって処理を変えるものが機能として用意されています。
一つは特定のテキストが存在しない場合作業を中断する「assert」
もう一つはエラーは出すが、作業自体は続行する「verify」です。
詳細は以下URL
http://oss.infoscience.co.jp/seleniumhq/docs/04_selenese_commands.html
Selenium WebDriverでは、この「assert」、「verify」の機能は利用できなくなりました。
しかし、driver.getPageSource().contains("テキスト")
を使うことで
より自由にテキストの検出をすることが可能となっています。
driver.getPageSource().contains("テキスト")
は特定のテキストがHTML内に存在すればtrue,
なければfalseを返します。
これなら、「assert」、「verify」と同じ機能を作ることは容易ですし、それ以外にもなにかと使い勝手がよさそうですね!!
実際、機能を作り次第、記載できたらと思います!
最初、assertが使えないとわかった時焦りましたが、
逆にシンプルなほうが使い勝手良かったりしますよね。
そんな感じで今回は短いですが、以上で終わります!