カスタム動作を使って、PDFファイルのダウンロードをしよう
はじめに
カスタム動作を作成して、インターネット上で公開されているPDFをダウンロードする動作を、実装します。
前提条件
- PDFのURLが分かっている事(テストケースの設定値で指定するため)
もくじ
詳細
1. サンプルファイルをダウンロード、インポートする
以下からファイルのダウンロードができます。(sync_PDFdownload.zip)
https://github.com/valtes-rd/t-dash/releases/tag/T-DASH_tutorial_PDF
以下のチュートリアルにそって、サンプルファイルをインポートしてください。
■プロジェクトファイルをインポートしよう
/t-dash/function/tutorial/import_export_projectfiles_vol_001
プロジェクトファイルをインポートすると、
プロジェクト内のすべての情報がインポートした情報で上書きされます。
必ず、「+プロジェクトを作成」ボタンから新規プロジェクトを作成し、インポートしてください。

2. カスタム動作を作成する
※作成する内容は、サンプルファイルでは既に作成済みです。
まずはカスタム動作を作成していきます。
左メニュー「動作定義」タブ→「カスタム動作」を選択し、「+新規カテゴリ作成」をクリックします。

カテゴリを作成して「作成」をクリックします。
キーは半角英数字で記載して、最後に「作成」をクリックします。

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

動作関数を作成します。
画像のように「任意の動作名」 「利用変数」 「動作種類」 「任意のフォーマット」 「説明」を設定します。

追加するライブラリ : 「RequestsLibrary」「OperatingSystem」
「+ライブラリを追加する」ボタンをクリックします。

pip installの欄に「robotframework-requests」と入力して、「+」をクリック。
※RequestsLibraryは外部ライブラリなのでpip installが必要になります

その下のLibrary欄で 「RequestsLibrary」と「OperatingSystem」と記載し、 最後に「+」をクリックして追加します。

「動作名」:適した動作名を入力する
「利用変数」:今回は画面定義を使用しないため、「通常の変数として使用」にチェックしています。
「フォーマット」:設定値1、設定値2、設定値3、を適した形に入力します
「説明」:入力しておくとテストケース作成画面にて説明文が確認できるようになります

今回は以下のように作成しました。

動作関数の作成です。

- ■1行目:Create Directory ${value1}
- 設定値1の場所にディレクトリを作成します(すでに存在する場合はエラーにならず、スキップされます。)
- ■2行目:${response}= Get ${value2}
- 設定値2のURLからHTTP GETリクエストを送信し、レスポンスを変数${response}に格納します
- ■3行目:Create Binary File ${value3} ${response.content}
- ${response.content}(取得したバイナリデータ)を ${value3} のパスにファイルとして保存します。
- ■4行目:File Should Exist ${value3}
- 設定値3に指定されたファイルが存在するかどうかを検証します。
作成が終わったら、右上の「保存する」ボタンを入力します。

3. テストケースを作成する
※作成する内容は、サンプルファイルでは既に作成済みです。
以下のようにテストケースを作成します。
左側の「動作一覧」から先ほど作成したカスタム動作「PDFを開き、ダウンロードする」を選択します。
①設定値1:
PDFの保存先ディレクトリ(新規作成か既にあるディレクトリ)
②設定値2:
PDFのURL(.pdfの拡張子)
③設定値3:
保存時のPDFのファイル名をディレクトリから記載
例:C:\\sample\\sample.pdf
※エスケープ処理のためバックスラッシュが2つ必要です。

テストケース作成が完了したら、右上の「保存する」ボタンをクリックします。

5. テストを実行する
テストスイート画面から、実行したいテストスイートとテストケースにチェックをいれます

右上の「選択したテストを実行する」をクリックするとテストが実行されます。

PDFがダウンロードできました。
URLのPDFが、指定した保存先とファイル名で、ダウンロードできていることを確認しました。
