FTP ユーティリティ

FTP サーバーに接続するコードをテストするには、ローカル環境に FTP サーバーをインストールしてテストを実行する必要があります。また、テスト専用の外部 FTP サーバーを使用することもできますが、Maven プロジェクトは移植できません。サードパーティがテスト FTP サーバーをインストールしてプロジェクトをコンパイルする必要があります。

FTP 接続を容易にテストできるように、MUnit ではローカル環境に FTP サーバーを実装できます。

MUnit FTP サーバーモジュールのインストール

  1. Anypoint Studio から、​[Mule Palette (Mule パレット)]​、​[Search in Exchange…​ (Exchange 内を検索…​)]​ の順に移動します。

  2. 検索バーで​「MUnit Utils FTP Server」​ (MUnit ユーティリティ FTP サーバー) を検索し、そのモジュールをプロジェクトに追加します。

    <!-- Ftp Server Dependency -->
    <dependency>
        <groupId>com.mulesoft.munit.utils</groupId>
        <artifactId>munit-ftpserver-module</artifactId>
        <version>2.0.1</version>
        <classifier>mule-plugin</classifier>
        <scope>test</scope>
    </dependency>

    POM ファイル内の MUnit FTP サーバーアーティファクトには ​test​ スコープが必要です。

属性リファレンス

FTP サーバーは次のパラメーターを取ります。

属性名 説明

name

FTP サーバーの設定名を定義します。

この値は一意である必要があります。

port

FTP サーバーがリスンするポートを定義します。

anonymous

(Boolean (ブール)) FTP サーバーへの匿名アクセスを設定します。​anonymous​ が ​true​ に設定している場合は、​anonymous​ ユーザー名を使用して FTP サーバーにアクセスするためにパスワードを設定する必要がありません。

デフォルト値は ​true​ です。

secure

(Boolean (ブール)) FTP プロトコルを定義します。secure パラメーターが true に設定されている場合、サーバーは SFTP サーバーとして動作し、接続は認証を介してのみ許可されます。false に設定されている場合、サーバーは FTP サーバーとして動作し、認証済み接続または匿名接続が許可されます。

デフォルト値は false です。

homeDir

ユーザーのホームディレクトリを定義します。デフォルト値はファイルシステムのルートです。
~​ 文字を使用して FTP ユーザーのホームディレクトリを定義し、ファイルシステム上のホームディレクトリを表すことができます。

MUnit FTP サーバープロセッサー

FTP ユーティリティには、FTP サーバーとのやり取りを行うための 2 つのプロセッサーがあります。

contains-files

contains-files​ プロセッサーは、FTP サーバー内のファイルの存在を検証します。ファイルが存在しない場合、プロセッサーが失敗し、テストが失敗します。

<ftpserver:contains-files config-ref="MUnit_FTP_Server_Config" path="/" file="example.txt"/>
属性名 説明

config-ref

FTP サーバー設定を定義します。

path

以前に定義したユーザーのホームディレクトリに基づき、検索するフォルダーを定義します。

file

検索するファイルの名前を定義します。

削除

remove​ プロセッサーは、役立つ可能性がある別の操作を提供します。この操作は、ストレージからファイルを削除するよう FTP サーバーに指示します。

<ftpserver:remove config-ref="MUnit_FTP_Server_Config" path="example.txt"/>
属性名 説明

config-ref

FTP サーバー設定を定義します。

path

削除するファイルのフルパス。

この機能は、同じファイル名を何度も作成するときに役立ちます。​after-test​ で設定して、名前の競合が原因でテストに失敗しないようにすることができます。