カスタム動作を作成しよう / Robot Frameworkで作成
はじめに
T-DASHではRobotFrameworkのライブラリをインストールすることで、独自の動作を作成することができます。T-DASH標準動作では実現できないこともカスタム動作を作成することで実現可能となります。
例:
Webアプリ操作、ファイル操作、スマホアプリ操作、DB操作、API操作などなど
カスタム動作機能を活用して幅広いテスト自動化を実現しましょう。
ゴール
・RobotFrameworkのライブラリを使用してカスタム動作を作成できるようになる
・作成したカスタム動作を使用しテスト実行できることを確認する
■今回作成するカスタム動作
1.サンプルサイトのタイトルを取得
2.取得したタイトルの末尾に任意の文字列を結合
3.2.の文字列を検索欄に入力する
http://localhost:8686/tdash-objects-vuejs-master/vue_index.html#/
前提
・T-DASHを起動している
・プロジェクトが作成されている
・テストスイート、テストケースが作成されている
詳細
1. 動作定義->カスタム動作->+ 新規カテゴリ作成に遷移して、任意でキーと動作カテゴリ名を入力して作成ボタンを押下
キーは半角英数字指定
動作カテゴリは特に制限なし
2. +カスタム動作を追加ボタンを押下
3. 動作名、フォーマットを任意で入力
※今回の例では設定値を使用するキーワードフォーマットを作成します
■画面定義を使用の場合
画面定義画面で設定されている値を使用することができるようになります。
■通常の変数として使用の場合
最大3つまで変数として使用することができるようになります。
4. +ライブラリを追加するボタンを押下して使用するRobotframeworkのLibraryを定義する
BuiltIn
SeleniumLibrary
■今回使用するライブラリ
・Webアプリ操作系のライブラリ
SeleniumLibrary (robotframework.org)
・Robot Frameworkの一般的な操作がまとまったライブラリ
※ Robot Framework’s standard libraryと記載のあるものに関してはLibraryの追加のみでOK。
■Robot Framework’s standard library以外を使用する場合
pip installをしてライブラリをインストールする必要あり
robotframework-appiumlibrary · PyPI
5. Robotframeworkのキーワードを記載する
■今回作成したRobotframeworkのコード
Open Browser | http://localhost:8686/tdash-objects-vuejs-master/vue_index.html#/ | ||
${TITLE}= | Get Title | ||
${STR_VALUE} | Catenate | ${TITLE} | ${value} |
Log | ${STR_VALUE} | ||
Input Text | //input[@id=”txtauto”] ※ ダブルクォーテーションが全角表示ですが、半角に変換して入力してください。 | ${STR_VALUE} |
1行目:サンプルサイトを開く(SeleniumLibrary)
2行目:サンプルサイトのタイトルを取得する(SeleniumLibrary)
3行目:タイトルと任意の値${value}を結合する(BuiltIn)
4行目:結合した値をログ出力する(BuiltIn)
5行目:検索欄に結合した値を入力する(SeleniumLibrary)
※Robotframeworkの書き方はリファレンスの例を参考にする
6. 保存するボタンを押下する
7. テストスイート->テストスイート->テストケースリンク押下->作成したカスタム動作手順を追加して保存する
8. 選択したテストを実行するを押下してテスト実行
9. テストレポートを開くを押下->LOGボタン押下でLOGが出力されていることを確認する
実行に失敗する場合
エラーの内容を確認して、検索して対処してみてください。
ほぼ、Robot Frameworkに使い方に関するエラーとなります。
例:Multiple Keywordsエラーの場合
同じメソッド名のライブラリが入っているため区別できていない。
エラーメッセージ通りに先頭にライブラリ名を付けて記載するとよい
${id}= | SeleniumLibrary.Get Element Attribute | css:h1 | name |