J'ai un test d'intégration utilisant XUnit qui accède à la base de données. Nous devons être en mesure d'obtenir la chaîne de connexion à la base de données à partir du fichier app.config.Cake Build Script: Erreur lors de l'exécution des tests d'intégration XUnit - Impossible d'obtenir ConfigurationManager.ConnectionStrings ["FlexConnString"]
Lors de l'exécution du test à partir de l'IDE, il fonctionne parfaitement et la chaîne de connexion est trouvée. Quand je lance automatiquement le test d'un cake.build les ConfigurationManager.ConnectionStrings [ "blahblah"] ret
var connectionStringSettings = ConfigurationManager.ConnectionStrings["FlexConnString"];
if (connectionStringSettings == null)
{
Console.WriteLine("ConfigManager does not return a setting for FlexConnString");
_connectionString = "No Connection string";
}
Le groupe de gâteau est
Task("Run-Integration-Tests")
.IsDependentOn("Run-Unit-Tests")
.Does(() =>
{
var testDir = "./artifacts/_tests/**/*.IntegrationTests.dll";
Information("Start Running Integration Tests in " + testDir);
XUnit2(testDir,
new XUnit2Settings {
Parallelism = ParallelismOption.All,
HtmlReport = true,
NoAppDomain = true,
NUnitReport = true,
XmlReport = true,
ReportName = "MixTdiIntegrationTestResults",
OutputDirectory = "./artifacts"
});
});
Ce sorties ConfigManager ne retourne pas un paramètre pour FlexConnString 'lors de l'exécution du build.cake de powershell.
Je ne sais pas si c'est un problème XUnit ou un problème de gâteau.
Si vous lancez un gâteau avec une verbosité diagnostique, vous obtiendrez plus de journalisation et la ligne de commande utilisée pour lancer xunit. Vous pouvez en savoir plus sur dans la question ci-dessous https://stackoverflow.com/questions/38658660/how-to-enable-diagnostic-verbosity-for-cake – devlead