Grobutils Coreを使用した同時テスト用のJunitの実装方法(詳細手順)

不言
リリース: 2019-03-14 11:08:47
転載
3213 人が閲覧しました

この記事の内容は、PHP フレームワークにおける MVC アーキテクチャの分析に関するものです (例付き)。一定の参考価値があります。必要な友人が参照することができます。お役に立てれば幸いです。

junit は同時テストを実行できませんが、同時テストが必要なシナリオがある場合はどうすればよいですか?現時点では、プラグイン (Grobutils Core) を使用してこの機能を完了できます。
maven ウェアハウスのアドレス: ここをクリックして直接移動します

実装

最初のステップ: プロジェクトの pom.xml に依存関係を追加します

<!-- https://mvnrepository.com/artifact/net.sourceforge.groboutils/groboutils-core -->
<dependency>
  <groupId>net.sourceforge.groboutils</groupId>
  <artifactId>groboutils-core</artifactId>
  <version>5</version>
  <scope>test</scope>
</dependency>
ログイン後にコピー

ステップ 2: 単一のテストでコードを記述する

@Test
  public void testConcurrentInitOrBind() {

    // mock一个返回
    doReturn(Lists.newArrayList(userMemberCard)).when(operateCardDao)
        .queryCardByRegisterMobileAndTenantId(anyString(), anyLong());

    TestRunnable runner = new TestRunnable() {
      // 在runTest方法中填写自己的测试方法
      @Override
      public void runTest() throws Throwable {
        InitCardResVo resVoFirst = operateCardService.initOrBindCard(requestVo);
        System.out.println("result resVoFirst is:" + resVoFirst.toString());
      }
    };

    // 一个数组,代表并发个数。此处并发5个
    TestRunnable[] trs = new TestRunnable[5];
    for (int i = 0; i < 5; i++) {
      trs[i] = runner;
    }
    MultiThreadedTestRunner mttr = new MultiThreadedTestRunner(trs);
    try {
      mttr.runTestRunnables();
    } catch (Throwable ex) {
      ex.printStackTrace();
    }
  }
ログイン後にコピー

以上がGrobutils Coreを使用した同時テスト用のJunitの実装方法(詳細手順)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート