Dans mon code j appelle une methode static d une classe
Soit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
void fct () {
  MyClass.do();
}
Ca marche tres bien mais pour des tests, je veux avoir un comportement
different. J ai donc cree une sous classe de MyClass.

Probleme: je veux que ma classe appelant appelle normalement MyClass mais que lorsque je suis dans un test JUnit, elle appelle MyClassForTest

A debut j avais pense declarer un attribut static dans ma class appelante et avoir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
void fct () {
  myClass_Or_MyClassForTest.do();
}
Est ce possible ?
Comment le declarer ?
Si je fais static MyClass myClass_Or_MyClassForTest; je dois creer un objet de type Myclass et donc ne plus acceder a ma classe statiquement

PS: il y a évidement la solution de faire un test dans MyClass pour savoir si je suis en mode test ou non, mais je prefererai ne pas la toucher