2009-05-05 3 views
0

J'essaie de tester l'unité à l'aide du test unitaire VSTS 2008. Mon problème est: Je souhaite invoquer deux cas de test dans une commande. J'utilise pour cela la fonctionnalité Cas de test ordonné de VSTS 2008. Problème auquel je fais face, j'augmente la valeur d'une variable (X) dans TestA et, sur la base de cette valeur, je vérifie quelque chose dans TestB. Mais lorsque le contrôle arrive dans TestB, j'obtiens la valeur initiale du X mais pas celle qui a été incrémentée dans TestA. Je pense que pour chaque test, vsts crée une nouvelle instance de la classe de test en mémoire. Veuillez suggérer une solution à ceci excepté l'utilisation de variables STATIC.OrderedTest - Ne pas conserver les valeurs du test précédent. - visualstudio208 - Tests unitaires

code pour le même est comme ci-dessous

[TestMethod()] 
    public void ff() 
    { 
     i = 11; 
    } 

    [TestMethod()] 
    public void gg() 
    { 
     if (i == 4) 
     { 

      System.Diagnostics.Debug.WriteLine("it is 4"); 
     } 

     else 
     { 
      System.Diagnostics.Debug.WriteLine("it is 7"); 
     } 
    } 

Merci à l'avance

Répondre

1

Est-il possible de revoir vos tests de manière que chacun peut être exécuté séparément? C'est la bonne façon de tester dans 99% des cas. Bien que cela augmente légèrement les frais généraux, et que vous reproduisiez un peu votre configuration, il est beaucoup plus facile à maintenir, et chaque test peut se concentrer sur sa fonction unique, sans se préoccuper des changements environnementaux.

0

exécutez vos tests commandés en utilisant la fenêtre TestView sous Test> Windows. Si vous cliquez sur Exécuter tous les tests dans la solution, les tests que vous avez commandés ne fonctionneront plus