J'ai une solution c# avec la structure suivante :
mySolution
myProject
myProject.MSTests
References
Microsoft.VisualStudio.QualityTools.UnitTestFramework
sutMSTests.cs
sutMSTests.cs :
[TestClass()]
public class sutMSTests
{
[TestMethod]
public void MyTest0()
{
Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(4, 2 + 2);
}
}
Lorsque j'essaie d'exécuter les tests via Test, Run, All Tests In Solution, j'obtiens le résultat suivant sur la ligne d'état de VS2008 :
Aucun test n'est exécuté car aucun test n'est chargé ou les tests sélectionnés sont désactivés.
Test, Windows, Test View ne montre aucun test.
Note : J'ai créé les tests manuellement (fonctionne pour xUnit.net) au lieu d'utiliser les assistants de Microsoft.
J'ai comparé mon installation MSTest créée à la main à l'installation d'un autre test que j'ai généré à l'aide de l'assistant. ils semblent être suffisamment similaires.
Question : Quelles sont les causes les plus probables du message d'erreur ci-dessus ?
Edit 2010-02-25 : Plus d'informations :
J'ai fait un clic droit sur le Éléments de solution et choisissez Ajouter, Nouveau projet, type Projets de test, Documents de test::Modèle de projet de test Visual Studio.
Le test par défaut du nouveau projet "TestMethod1" a été détecté et réussi.
Cependant, mon test n'apparaissait pas ... j'ai donc copié et collé ma méthode de test dans le projet de test par défaut "TestProject1".
Mon test a été détecté dans "TestProject" MAIS pas dans son emplacement d'origine.
J'ai comparé de près les fichiers, l'organisation et les paramètres de "TestProject1" avec mon projet de test créé à la main.
A ce stade, je suis deviner qu'un certain réglage est effectué par le modèle Visual Studio Test Project qui n'est pas facilement détectable.
Pour moi, il devrait être aussi facile de créer un projet de test à la main que d'en créer un avec le modèle de projet de test de Visual Studio.
Remarque : je ne dis pas que je suis contre l'utilisation du modèle de projet de test de Visual Studio ; pour ma part, j'aime comprendre ce qui se passe derrière le rideau, car cela fait de moi un bien meilleur programmeur.