2017-05-17 1 views
1

J'apprends à créer des méthodes de test unitaires pour une application bancaire dans le cadre de ma mission et je vais avoir un problème:C# MOQ test unitaire Méthode pour getAccounts pas testé

La méthode d'essai GetAccounts() est de ne pas testé pour une raison quelconque sur Visual Studio. le message de sortie que je reçois est

"Discover Test terminé: 0 trouvé"

Ceci est le bloc de méthode d'essai ci-dessous. Comment puis-je faire découvrir le test à Visual Studio et me donner un résultat?

Si quelqu'un veut que je poste plus de mes codes, et pas seulement l'extrait ci-dessus, faites le moi savoir. Je suis heureux de vous donner plus d'informations.

+1

a la classe aussi un attribut? –

+0

Assurez-vous que la classe de test possède également l'attribut '[TestClass]'. Montrer le test complet. – Nkosi

+0

Ah oui, il a un attribut. Je ne l'ai pas inclus dans ce morceau de code. Mais merci. – crhodes

Répondre

1

Assurez-vous que la classe de test a également [TestClass] attribut

[TestClass] //<--- Test classes must have this attribute to discover test methods 
public class AccountTests { 
    IDatabase MockDatabase; 

    [TestInitialize] 
    public void Arrange() { 

     var accounts = new List<Account> 
     { 
      new Checking(new Customer(1, "Alex", "Parrish"), 12, 30.00M), 
      new Savings(new Customer(2, "Alex", "Russo"), 12, 29.00M), 
      new Checking(new Customer(3, "Emma", "Swan"), 12, 30.00M), 
      new Savings(new Customer(4, "Henry", "Mills"), 12, 30.00M) 
     }; 

     var dataMock = new Mock<IDatabase>(); 
     dataMock.Setup(_ => _.GetAccounts()).Returns(accounts); 

     //...code removed for brevity 

     MockDatabase = dataMock.Object; 
    } 

    [TestMethod] 
    public void GetAccounts() { 
     var testAccount = this.MockDatabase.GetAccounts(); 
     Assert.IsNotNull(testAccount); 
     Assert.AreEqual(4, testAccount.Count); 
    } 

    //...code removed for brevity 
} 
+0

Ah oui, il a un attribut. Je ne l'ai pas inclus dans ce morceau de code. Mais merci. – crhodes