Transporter une variable à travers plusieurs tests
Bonjour,
avec TESTNG je dois créer un "dossier" qui va générer une "référence de dossier". Je dois le récupérer, puis sur un autre test je dois utiliser cette référence de dossier.
donc voici mon xml simplifié...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <suite...
<test name="TEST1"...
<classes>
<class name="...">
<methods>
<include name="creerDossier" />
</methods>
</class>
</classes>
<test>
<test name="TEST2"...
<classes>
<class name="...">
<methods>
<include name="consulterDossier" />
</methods>
</class>
</classes>
<test>
</suite> |
Comment feriez vous svp pour transporter la référence d'un dossier (creerDossier) pour qu'il soit en entrée de (consulterDossier)
Merci!
Dependecy injection et ITextContext
Si tes tests sont dans la même classe, alors simplement déclare des attributs pour stocker les informations.
Sinon, ce que tu cherches a faire c'est conserver un contexte d’exécution des tests.
Il n'y a pas de solution toute faite avec TestNG, mais TestNG propose une injection de dependance avec ITestContext.
Exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| @Test
public void creerDossier(ITestContext context) {
String refDossier = creerDossier();
context.setAttribute("refDossier", refDossier);
}
// ---- //
@Test
public void consulterDossier(ITestContext context) {
String refDossier = context.getAttribute("refDossier");
consulterDossier(refDossier);
} |