【Guarana】チュートリアル1

★2017/11/20 対象サイトの動作に合わせて、一部内容を修正しました。

「Guarana」のダウンロード数もかなり伸びてきた(?)ので、具体的な使用方法を紹介していきたいと思います。

今回のテーマは
 Guaranaで「テスト自動化 札幌」をググってみよう!
です。

※「Guarana」のダウンロードは こちら から。

基本的な流れは、

 1.環境設定
 2.要素の取得、定義
 3.キーワードを記述
 4.実行

になります。

<準備>
各手順ではキーワードファイルを編集していきます。
付属のサンプルキーワードファイル(KeyWords_Sample_お問い合わせ.xlsx)を複製し、「Guarana_Tutorial_1.xlsx」などわかりやすい名前に変更してください。

また、[Targets]シートと[KeyWords]シートにサンプルデータが入力されていますので、入力されている内容を削除しておいてください。

1.環境設定

キーワードファイルの[Environment]シートで下記のように設定します。

・PlatformName: Windows
・BrowserName: Chrome
・BaseURL: https://www.google.co.jp/
・MaxWaitTime: 30

※BaseURL: 対象ページのURLを指定します。
※MaxWaitTime: ページが表示されなかったり要素が特定できなかった場合の待ち時間の設定です。単位は「sec」です。

2.要素の取得、定義

キーワードファイルの[Targets]シートに要素を定義します。

要素とは、入力欄、ボタン、リンクなど、操作を行ったり、値を取得する対象となる「HTMLの要素」のことです。

このチュートリアルでは、Chromeの「検証」機能を使用して、要素を取得する方法を紹介します。

まず、Chromeを起動し、今回の対象サイト https://www.google.co.jp/ を開きます。

入力欄に「テスト自動化 札幌」と入力したいので、この入力欄の要素から取得します。

入力欄を右クリックし、「検証」を選択します。

HTMLの中でこの入力欄に該当する箇所がハイライト表示されます。

input要素に id=”lst-ib” という id属性があるので、これが使えそうです。

[Targets]シートに下記のように記述します。

・Page: トップ
・Target: 入力欄
・Attribute: Id
・Definition: lst-ib

※PageとTargetは任意の名称で構いません。

次に、検索ボタンの要素を取得します。

入力欄と同様の手順で検証すると、button要素が見つかります。

name属性があるので、これが使えそうです。

[Targets]シートに下記のように記述します。

・Page: トップ
・Target: 検索ボタン
・Attribute: Name
・Definition: btnK

以上で「テスト自動化 札幌」をググるための要素の定義は完了です。

3.キーワードを記述

自動化する操作を[KeyWords]シートに記述します。

入力欄に「テスト自動化 札幌」と入力するためは、SendKeysアクションを使用して、下記のように記述します。

Page: トップ
Target: 入力欄
Action: SendKeys
Value: テスト自動化 札幌

※Page、Targetの値は[Targets]シートで定義したものから選択します。

次に検索ボタンをクリックするため、下記のように記述します。

Page: トップ
Target: 検索ボタン
Action: Click
Value: –

これで最低限のキーワードは完成です。

今回はそれぞれの操作を目視で確認できるように Wait を入れてみます。

最終的にはこんな感じです。

4.実行

作成したキーワードファイル(Guarana_Tutorial_1.xlsx)を run.bat の上にドラッグ&ドロップします。

コマンドプロンプトが起動した後、Chromeが起動し、記述した操作が実行されます。

広告が1件表示されていますが、検索結果の先頭に弊社のブログが表示されていますね。
Googleの検索エンジンに評価していただけたようでありがとうございます。

無事検索出来たところで、今回のチュートリアルは以上です。

※今回作成したキーワードファイル(Guarana_Tutorial_1.xlsx)は こちら からダウンロード可能です。

コメント

  1. AUC より:

    いつもお世話になっております。
    Guaranaを活用した自動テストの検証を社内で実施中です。
    検証中のメンバーから、以下のような要望が出てきています。
    ご検討の程よろしくお願い致します。

    1. BASIC認証、DIGEST認証が設定されたページをテストする際に、ID/パスワードを環境設定で事前に登録しておきたい。その都度、手入力するのが面倒くさい。

    2. 自動テストの実行結果がNGとなった場合に、スクリーンショットが自動的に取得されるが、実行結果がOKの場合にも取得したい。キーワードを記述の際に、スクリーンショットを自動取得するか、しないかの項目を追加できないか。

    • amaike より:

      貴重なご意見をお寄せいただき誠にありがとうございます。

      ご要望の機能につきましては、実現できますよう検討して参ります!

      今後ともよろしくお願い致します。

  2. AUC より:

    いつもお世話になっております。
    Guaranaを活用した自動テストの検証を社内で実施中です。
    検証中のメンバーから、以下のようなご確認依頼が届いています。
    ご検討の程よろしくお願い致します。

    1. アラート表示後の確認処理
    実施させたいことは、alertを表示させた後に「OK」を押下して遷移するテストです。
    keywordシートのActionには、Click(アラート表示)後にAlert_OKとしています。
    エラー内容としては「org.openqa.selenium.UnhandledAlertException」が表示されます。
    alertが表示された状態で、リクエストを行うと例外エラーが発生してしまう模様です。

    • amaike より:

      ご報告いただきありがとうございます。
      こちらの事象につきましても、課題として検討させていただきたいと思います。

  3. 佐藤 より:

    テスト自動化ツールの検証をしています。
    Guaranaは設定が簡単なので期待しています。
    最新バージョンでこちらのチュートリアルを実施してみたのですが、SendKeysでタイムアウトしてしまいます。なにか他に設定が必要でしょうか?OSがWin10 64ビットです。
    よろしくお願いいたします。

  4. amaike より:

    佐藤様

    Guaranaをダウンロードしていただきありがとうございます。

    ブラウザはIEをお使いでしょうか。
    SendKeysでタイムアウトしてしまう事象につきましては、64ビット用のIEドライバを使用している場合に発生することを確認しております。

    この場合、OS自体は64ビットでも、32ビット用のIEドライバを使用することで回避できるようです。
    キーワードファイルの[Environment]シートを下記のように設定して、再度お試しいただければと思います。
    ・PlatformName :Windows_32
    ・BrowserName :InternetExplorer

    また、Edgeの場合で、Windows 10のビルド番号が14393より古い環境では、ドライバがマルチバイト文字のSendKeysに対応していないという制限もございます。
    この場合は、OSをアップデートしていただき、最新のEdgeドライバをダウンロードした上で、再度お試しいただければと思います。

    README.txtの「12. FAQ、制限事項」にも、ドライバの制限事項などを記載しておりますので、併せてご確認いただけると幸いです。

    どうぞよろしくお願いいたします。