Comment lire App.Config du projet UnitTest à partir du test avec HostType ("Moles")
J'ai l'suivantes tests:
[TestClass]
public class GeneralTest
{
[TestMethod]
public void VerifyAppDomainHasConfigurationSettings()
{
string value = ConfigurationManager.AppSettings["TestValue"];
Assert.IsFalse(String.IsNullOrEmpty(value), "No App.Config found.");
}
[TestMethod]
[HostType("Moles")]
public void VerifyAppDomainHasConfigurationSettingsMoles()
{
string value = ConfigurationManager.AppSettings["TestValue"];
Assert.IsFalse(String.IsNullOrEmpty(value), "No App.Config found.");
}
}
La seule différence entre eux est [HostType("Moles")]
. Mais le premier qui passe et la seconde échoue. Comment puis-je lire App.config à partir de la deuxième test?
Ou peut-être que je peux ajouter un autre fichier de configuration dans un autre endroit?
source d'informationauteur Draco Ater
Vous devez vous connecter pour publier un commentaire.
Voir http://social.msdn.microsoft.com/Forums/en/pex/thread/9b4b9ec5-582c-41e8-8b9c-1bb9457ba3f6
Dans le temps de le dire, comme un travail autour de vous, vous pourriez essayer d'ajouter les paramètres de configuration de Microsoft.Les taupes.VsHost.x86.exe.config
En supposant que vous essayez d'accéder à valeurs dans appSettings, que diriez-vous simplement de l'ajout de la configuration au début de votre test. Quelque chose comme:
Puis, quand votre test essaie de lire le AppSettings "Clé", "Valeur" sera retourné.
Vous suffit d'ajouter votre "App.Config" fichier de l'unité de projet de test . Il sera automatiquement lu.
J'ai couru à travers ce problème au travail et n'aime pas l'une de ces réponses. J'ai aussi le problème que le fichier de configuration est en cours de lecture dans un constructeur statique qui signifie que je ne peux pas Mole ConfigurationManager avant que le constructeur statique est exécutée.
J'ai essayé sur mon ordinateur à la maison et a trouvé que le fichier de configuration a été lu correctement. Il s'avère que j'ai été en utilisant Pex 0.94.51006.1 à la maison. C'est légèrement plus âgée que celle de l'actuel. J'ai été en mesure de trouver un télécharger l'ancienne version académique:
http://research.microsoft.com/en-us/downloads/d2279651-851f-4d7a-bf05-16fd7eb26559/default.aspx
J'ai installé sur mon ordinateur de travail et tout fonctionne parfaitement. À ce stade, je suis à la rétrogradation à la version la plus ancienne jusqu'à la plus récente version de travail est libéré.
C'est ce que j'utilise pour obtenir la bonne AppConfig et ConnectionString sections:
Vu la ConnectionString partie ici