異なる環境(最大3)で同じテストを実行する必要がありますが、それぞれについて異なるデータを使用する必要があります。私が持っているUserDataのクラスで異なるデータで複数の環境をテストする - ベストプラクティス
@Test (groups = "core", description = "Login: Valid log in")
public void validLogin() {
User user = UserData.user_2();
loginPage.logOn(user);
}
:
public static User user_2() {
return new User().newUser("user2", "password");
}
"user2は" すべての環境に存在しない
は、私がテストメソッドを持っています。私は、テストデータと一致するようにすべての環境で利用可能なデータを変更することができないかもしれません。
テストはMavenとTestNgのどちらかで実行されるので、実行環境のパラメータを送信できます。
私の最初に考えたのは使用することです:
public static User user_2() {
switch(env) {
case "env1": return new User().newUser("user2", "password"); break;
case "env2": return new User().newUser("user2Z", "password"); break;
case "env3": return new User().newUser("user2X", "password"); break;
}
私はデータクラスとメソッドの限られた数(< 100)が、数千回のテストを持っています。
さまざまな環境でテストするために必要なデータを設定して処理する最良の方法は何ですか?
このような奇妙な要件を実装する前に、おそらくあなたがこれをやろうとしている理由を分かち合うことができます。そして、より良いアプローチを見つけるお手伝いをします。 –