カスタム動作を使って、先頭のゼロを付けずに日時を出力しよう
はじめに
T-DASHの標準動作には、現在の日時を取得可能な予約語があります。
テストケース作成時、設定値に予約語を使用すると、テスト実行時に予約語に対応したデータに置換してくれる便利なものです。
ただ、この予約語で日時を取得すると、例えば「1月」の場合は「01月」というように先頭にゼロが付加されます。
本チュートリアルでは、テキストボックスに予約語 [現在の秒数] を入力する際に、「05秒」ではなく「5秒」と表示されるテストケースを作成します。
[月]や、[日]でカスタム動作を作成する場合は、サンプルプロジェクトを参照ください。
もくじ
- 前提
- 詳細
前提
- T-DASHを起動している
- 以下サンプルファイルをダウンロード済みである
サンプルファイル
- サンプルファイルのダウンロードはこちらから(sync_date.zip)
https://github.com/valtes-rd/t-dash/releases/tag/T-DASH_tutorial_date - サンプルファイルの内容
- syncファイル : サンプルテストケースと、カスタム動作が入ったプロジェクトファイルです。
詳細
1.ダウンロード済みサンプルプロジェクトをT-DASHでインポートする
プロジェクトファイルはインポートすると、
プロジェクト内のすべての情報がインポートした情報で上書きされます。
必ず、「+プロジェクトを作成」ボタンから新規プロジェクトを作成し、インポートしてください。

補足:プロジェクトファイル(syncファイル)のインポート方法は以下をご参照ください。
■プロジェクトファイルをインポートしよう
/t-dash/function/tutorial/import_export_projectfiles_vol_001
2.カスタム動作を作成する
まずはカスタム動作を作成していきます。
左メニュー「動作定義」タブ→「カスタム動作」を選択し、「+新規カテゴリ作成」をクリックします。

「動作カテゴリ編集」ダイアログが開きました。
キー(半角英数字)、動作カテゴリ、色を指定し、「作成」ボタンをクリックしてください。

カテゴリを作成後、「+カスタム動作を追加」をクリックします。

「動作関数作成」ダイアログが開きました。
画像のように「動作名(任意)」 「利用変数」 「動作種類」 「フォーマット(任意)」 を設定します。

続いて、ライブラリを追加します。
「+ライブラリを追加する」ボタンをクリックしてください。

「ライブラリ追加」ダイアログが開きました。
下へスクロールし、「Library」を表示してください。

今回はライブラリを1つ利用します。
「DateTime」と入力し、「+」ボタンをクリックしてください。
ライブラリ追加時は先頭に ” Library “をつけず、「DateTime」と入力してください。
「Library DateTime」でライブラリ追加をすると、カスタム動作が正しく動作しません。
※「DateTime」と入力後、「+」ボタンをクリックすると自動的に「Library DateTime」と上部に表示されるのは問題ありません。

Libraryに「Library DateTime」が追加されました。
「ライブラリ追加」ダイアログの右上にある「×」をクリックし、ダイアログを閉じます。

続いて、スプレッドシートにRobotFrameWorkの動作キーワードや値を入力します。

① | ${time}= | Get Current Date | result_format=%S |
② | ${second}= | Convert To Integer | ${time} |
③ | Set Suite Variable | ${second} |
①行目:
「Get Current Date」にて日時を取得し、変数timeに「秒」を格納します。
②行目:
秒が一桁の場合「01」表記になるので、「Convert To Integer」にて整数にし、「1」表示にします。
③行目:
変数secondをテストスイートで使用できるように設定します。
記述完了後、右上の「保存する」ボタンをクリックして「動作関数作成」ダイアログを閉じてください。

3.テストケースを作成する
次にテストケースの作成です。
①行目:
「画面のURLをブラウザで開く」で該当ページを開きます。
画面定義にてURLが未登録の場合は、「URLをブラウザで開く」でも開くことができます。
②行目:
作成したカスタム動作を呼び出します。
動作カテゴリから「先頭のゼロを付けずに時間(秒)を出力する」を選択します。
画面上の動きはありませんが、ここで「01秒」ではなく「1秒」を取得し、変数secondに値を格納しています。
③行目:
テキストボックスを選択します。
④行目:
選択したテキストボックスに②行目で取得した変数secondの値を入力します。
変数をテストケースで使用する際は、「${変数名}」で記載する必要があります。
⑤行目:
テストケースの実行を確実にするために、1秒待機させます。
⑥行目:
スクリーンショットをとります。
テスト完了後にreports > プロジェクトキーフォルダ > screenshotsフォルダにスクリーンショットが作成されます。


作成後に右上「保存する」ボタンをクリックします。

続けて、テストに必要な画面と要素を定義します。
「画面定義」タブから画面を作成、要素名と値(XPath)を入力します。

作成後に右上「保存する」ボタンをクリックします。
4.テストを実行する
「テストスイート」タブに戻り、
テスト実行したいテストスイートとテストケースにチェックが入っていることを確認します。
次に、「テスト環境選択」にてテストを実行させるブラウザを選択します。
最後に、右上の「選択したテストを実行する」をクリックします。

テストが実行され、現在の時刻(秒)が「7」と入力されました。

