1

TestNG で Selenium テストを行っています。すべてのテスト メソッドを別のファイルに保持するというメンテナンスの煩わしさを解消し、@Tests をスキャンするためのパッケージを含めるだけにしたいと考えています。

このシナリオを考えると、テスト ファイル内のテスト メソッドの順序を保持し、TestNG に一度に 1 つのテスト クラスを消費させる方法はありますか。現在、テスト内で @Test(dependsOn={}) を使用してメソッドの順序を維持しています。しかし、私はこの状況を見ています

TestClassA

  • test_method_1
  • test_method_2
  • test_method_3
  • test_method_4

TestClassB

  • test_method_1
  • test_method_2
  • test_method_3
  • test_method_4

テストを実行すると、順序は次のようになります。

  • クラス B、方法 1
  • クラスA、方法1
  • クラス B、メソッド 2
  • クラス B、メソッド 3
  • クラスA、方法2
  • クラスA、方法3
  • クラス B、メソッド 4
  • クラスA、方法4

クラスの順序は気にしません。次のテスト クラスに移る前に、1 つのテスト クラスのメソッドが完全に実行されることだけを気にします。

誰?

4

1 に答える 1

0

testng.xml ファイルを確認できれば幸いです。同様の状況がhttp://testng.org/doc/documentation-main.html#testng-xmlに記載されているようです。あなたの場合、あなたが持っているべきだと思います

<class name="TestClassA">
  <methods>
    <include name="test_method_1" />
    <include name="test_method_2" />
    ...
  </methods>
</class>

<class name="TestClassB">
  <methods>
    <include name="test_method_1" />
    <include name="test_method_2" />
    ...
  </methods>

于 2014-04-12T15:41:21.403 に答える