2017-05-22 2 views
0

@BeforeClassの条件に基づいてクラス内のテストケースをスキップする必要がある条件があります。私が知っている が、これは@BeforeClassTestNGの条件に基づいてクラス内のすべてのテストケースをスキップ

Class someClass { 

     @BeforeClass 
     public void beforeclass() { 
      if(someThing.equals("Wrong")) { 
        throw new SkipException("Testing skip."); 
      } 
     } 

     @Test 
     public void test_method1() { 
      //will be skipped if something is wrong. 
     } 

     @Test 
     public test_method2() { 
      //will be skipped if something is wrong. 
     }   
} 

でスキップの例外をスローすることによって達成することができ、このアプローチの問題は、私は私が書かれているそれぞれすべてのテストクラスのメソッドを@BeforeClass記述する必要があります。 クラス呼び出しのリスナーはありますか? またはこのメソッドを呼び出すクラス名にアクセスできる1つのグローバルbeforeClassを書き込む方法はありますか? クラス呼び出しリスナーで何も見つかりませんでした。この問題を解決するための他のアプローチも高く評価されています。

+0

これらのクラスを別々のスイートに配置し、それらのスイートの一部だけを実行することはできませんか? –

+0

@GrzegorzGórkiewiczそれはそれを行う一つの方法です、私はクラスがたくさんある、それは個々のアイテムのスーツを維持するのは難しいでしょう。より良いアプローチはありますか? –

答えて

関連する問題