クラス BrokerRunning

java.lang.ObjectSE
org.junit.rules.TestWatcher
org.springframework.amqp.rabbit.junit.BrokerRunning
実装されたすべてのインターフェース:
org.junit.rules.TestRule

public final class BrokerRunning extends org.junit.rules.TestWatcher
Rabbit ブローカーアプリケーションが実行されていないかアクセスできない場合に、統合テストが失敗しないようにするルール。Rabbit ブローカーがバックグラウンドで実行されていない場合、ここでのすべてのテストは、前提条件に違反しているため (デフォルトで) 単純にスキップされます (成功として表示されます)。使用箇所:
 @Rule
 public static BrokerRunning brokerIsRunning = BrokerRunning.isRunning();

 @Test
 public void testSendAndReceive() throws Exception {
        // ... test using RabbitTemplate etc.
 }
 
ルールを静的として宣言すると、囲んでいるテストケース内のすべてのテストを 1 回だけチェックするだけで済みますが、非静的にすることによるオーバーヘッドはあまりありません。

isRunningWithEmptyQueues(String...) を使用して、ルールの実行時にテストキューを宣言および / またはパージします。

@After メソッドから removeTestQueues(String...) を呼び出して、これらのキュー (およびオプションで他のキュー) を削除します。

CI サーバーなどでブローカーを強制的に使用可能にしたい場合は、環境変数 "RABBITMQ_SERVER_REQUIRED" を true に設定すると、テストはすぐに失敗します。

導入:
1.7
作成者:
Dave Syer, Gary Russell, Artem Bilan
  • メソッドの詳細

    • setEnvironmentVariableOverrides

      public static void setEnvironmentVariableOverrides(MapSE<StringSE,StringSE> environmentVariables)
      ホスト、ポートなどの環境変数のオーバーライドを設定します。存在する場合、実際の環境変数をオーバーライドします。

      変数は、このメソッドが呼び出された後に作成されたルールインスタンスにのみ適用されます。オーバーライドは、clearEnvironmentVariableOverrides() が呼び出されるまで残ります。

      パラメーター:
      environmentVariables - 変数。
    • clearEnvironmentVariableOverrides

      public static void clearEnvironmentVariableOverrides()
      setEnvironmentVariableOverrides(Map) で設定された環境変数オーバーライドをすべてクリアします。
    • isRunningWithEmptyQueues

      public static BrokerRunning isRunningWithEmptyQueues(StringSE... names)
      ブローカーが実行中であり、デフォルト交換に指定された名前の空のキューがあることを確認してください。
      パラメーター:
      names - テストのために宣言するキュー。
      戻り値:
      既存の実行中のブローカーを想定する新しいルール
    • isRunning

      public static BrokerRunning isRunning()
      戻り値:
      既存の実行中のブローカーを想定する新しいルール
    • isNotRunning

      public static BrokerRunning isNotRunning()
      戻り値:
      既存のブローカーが存在しないことを前提とする新しいルール
    • isBrokerAndManagementRunning

      public static BrokerRunning isBrokerAndManagementRunning()
      戻り値:
      管理プラグインを備えた既存のブローカーを想定する新しいルール
    • isBrokerAndManagementRunningWithEmptyQueues

      public static BrokerRunning isBrokerAndManagementRunningWithEmptyQueues(StringSE... queues)
      パラメーター:
      queues - キュー。
      戻り値:
      提供されたキューが宣言された (必要に応じて空にされた) 管理プラグインを備えた既存のブローカーを想定する新しいルール。
    • setPort

      public void setPort(int port)
      パラメーター:
      port - 設定するポート
    • setHostName

      public void setHostName(StringSE hostName)
      パラメーター:
      hostName - 設定するホスト名
    • setUser

      public void setUser(StringSE user)
      amqp 接続のデフォルト「ゲスト」のユーザーを設定します。
      パラメーター:
      user - ユーザー。
      導入:
      1.7.2
    • setPassword

      public void setPassword(StringSE password)
      amqp 接続のデフォルト "guest" のパスワードを設定します。
      パラメーター:
      password - パスワード。
      導入:
      1.7.2
    • setAdminUri

      public void setAdminUri(StringSE adminUri)
      REST API の uri を設定します。
      パラメーター:
      adminUri - uri。
      導入:
      1.7.2
    • setAdminUser

      public void setAdminUser(StringSE user)
      管理 REST API 接続のデフォルトの「ゲスト」のユーザーを設定します。
      パラメーター:
      user - ユーザー。
      導入:
      1.7.2
    • setAdminPassword

      public void setAdminPassword(StringSE password)
      管理 REST API 接続のデフォルトの「ゲスト」のパスワードを設定します。
      パラメーター:
      password - パスワード。
      導入:
      1.7.2
    • getPort

      public int getPort()
      ポートを返します。
      戻り値:
      ポート。
      導入:
      1.7.2
    • getHostName

      public StringSE getHostName()
      ポートを返します。
      戻り値:
      ポート。
      導入:
      1.7.2
    • getUser

      public StringSE getUser()
      ユーザーを返します。
      戻り値:
      ユーザー。
      導入:
      1.7.2
    • getPassword

      public StringSE getPassword()
      パスワードを返します。
      戻り値:
      パスワード。
      導入:
      1.7.2
    • getAdminUser

      public StringSE getAdminUser()
      管理者ユーザーを返します。
      戻り値:
      ユーザー。
      導入:
      1.7.2
    • getAdminPassword

      public StringSE getAdminPassword()
      管理者パスワードを返します。
      戻り値:
      パスワード。
      導入:
      1.7.2
    • apply

      public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement base, org.junit.runner.Description description)
      次で指定:
      インターフェース org.junit.rules.TestRuleapply 
      オーバーライド:
      クラス org.junit.rules.TestWatcherapply 
    • isUp

      public void isUp()
    • fatal

      public static boolean fatal()
    • generateId

      public StringSE generateId()
      ルールの接続ファクトリで使用される接続の接続 ID を生成します。
      戻り値:
      ID。
    • removeTestQueues

      public void removeTestQueues(StringSE... additionalQueues)
      isRunningWithEmptyQueues(String...) メソッドによって作成されたテストキューをすべて削除します。
      パラメーター:
      additionalQueues - テストによって作成された可能性のある削除する追加のキュー。
    • purgeTestQueues

      public void purgeTestQueues()
      構成されたすべてのキューを削除して再宣言します。テストが古いデータを残す可能性があり、複数のテストが同じキューを使用する場合に、テスト間で使用できます。
    • deleteQueues

      public void deleteQueues(StringSE... queuesToDelete)
      ブローカーから任意のキューを削除します。
      パラメーター:
      queuesToDelete - 削除するキュー。
    • deleteExchanges

      public void deleteExchanges(StringSE... exchanges)
      ブローカーから任意の取引所を削除します。
      パラメーター:
      exchanges - 削除する取引所。
    • getConnectionFactory

      public com.rabbitmq.client.ConnectionFactory getConnectionFactory()
      このルールで使用される接続ファクトリを取得します。
      戻り値:
      接続ファクトリ。
    • getAdminUri

      public StringSE getAdminUri()
      管理 uri を返します。
      戻り値:
      uri。
      導入:
      1.7.2