2017-07-17 6 views
0

外部ファイルから読み込んだtestngグループを使ってみました。それは文字列定数だけを取ることができるというコンパイル時エラーを出しています。以下のようになります:ファイルから読み込んだtestngグループを使用できますか?

@Test(dataProvider="myData", DataProviderClass=MyDataProvider.class, groups=MyGroups.getGroups()) 
public void test() 
{ 
//... 
} 

私は今のところTestNGで上記を行うことができません。だからこれを行う方法はありますか?

答えて

1

TestNGがリスナーとしてあなたに提供するorg.testng.IAnnotationTransformerインターフェイスの実装を構築し、そのorg.testng.IAnnotationTransformer#transformメソッド内でグループ情報を動的に注入することができます。 transform()の実装は、外部データソースからグループ情報を読み取るように拡張することができます。それはあなたの問題を解決するはずです。

+0

このトランスフォーマを持つグループを、実行のために選択されていないtestngメソッドに設定することは可能ですか?実行するメソッドも含めることができます。 –

+0

それができるかどうかは疑問だ。グループは基本的にメソッドセレクタですが、どのTestNGメソッドを適用するかは、 ''タグ(または) ''タグのいずれかによって決まります。したがって、特定のメソッドがセットに含まれるように選択されていない場合、メソッドセレクタはそれを強制的にインクルードすることはできません。希望は意味をなさない。これを乗り越えるには、恐ろしい ''エントリを使うことに頼ることができます。 –

関連する問題