10
votes

Nunit. Passer des paramètres en démolition

J'utilise Nunit. J'ai mon mode de test défini LikeSo: xxx pré>

après la fin d'une testeuse, elle passe dans la méthode de la déchirure. Qu'est-ce que je voudrais faire, ces paramètres de témoignage sont passés dans la méthode de test mais sont également passés dans la méthode de la déchirure. P>

Quelque chose comme ceci: p>

[TearDown]
public void TearDown(string firstName, string lastName)
{
  ...
}


0 commentaires

3 Réponses :


9
votes

Détruire et configuration sont exécutés pour chacun de vos tests dans le dispositif de test. Considérez que vous avez suivi des tests:

[TestCase("Joe", "Smith")]
public void Test1(string firstName, string lastName) { ... }

[Test]
public void Test2() { ... }

[TestCase(10)]
public void Test3(int value) { ... }


1 commentaires

Je pensais que Nunit ne l'appuie pas après beaucoup de googles. Mais merci pour votre réponse. Toujours bon à vérifier.



5
votes

En fait, c'est possible.

Si vous référence TestContext.CurrentContext.Test.Name Dans la déchirure, vous pouvez obtenir la signature de la méthode complète contenant les paramètres qui y ont été transmis. Vous devrez l'analyser, mais c'est là.


0 commentaires

10
votes

Il est possible de référencer les paramètres au test directement à partir du TestContext code> dans la fonction code> TeReLowdown code>.

quelque chose comme ça. P>

[Test]
[TestCase("Fred", "Bloggs")]
[TestCase("Joe", "Smith")]
public void MyUnitTest(string firstName, string lastName)
{
}

[TearDown]
public void TearDown()
{
    string firstName = TestContext.CurrentContext.Test.Arguments[0] as string;
    string lastName = TestContext.CurrentContext.Test.Arguments[1] as string;
}


1 commentaires

+1. Remarque: Si quelqu'un va utiliser l'approche de réponse, la version de Nunit doit être vérifiée - Array de Arguments est disponible depuis v3.7 ,