Je souhaite stocker une chaîne de connexion de base de données pour mes tests d'intégration en tant que secret d'utilisateur. Mon project.json ressemble à ceci:Comment utiliser les secrets d'utilisateur dans un projet de test de base dotnet
{
...
"dependencies": {
...
"Microsoft.Extensions.Configuration.UserSecrets": "1.1.0"
},
"tools": {
"Microsoft.Extensions.SecretManager.Tools": "1.1.0-preview4-final"
},
"userSecretsId": "dc5b4f9c-8b0e-4b99-9813-c86ce80c39e6"
}
J'ai ajouté ce qui suit au constructeur de ma classe de test:
IConfigurationBuilder configurationBuilder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.AddUserSecrets();
Cependant quand je lance les tests est jeté l'exception suivante quand il frappe cette ligne:
An exception of type 'System.InvalidOperationException' occurred in Microsoft.Extensions.Configuration.UserSecrets.dll but was not handled in user code
Additional information: Could not find 'UserSecretsIdAttribute' on assembly 'dotnet-test-nunit, Version=3.4.0.0, Culture=neutral, PublicKeyToken=null'.
Ai-je manqué quelque chose ou est ce que j'essaye de ne pas soutenu?
Cette semble juste me dire comment utiliser les secrets dans un projet ASP.NET qui n'est pas ce que je fais ici. J'ai déjà un projet Web distinct dans lequel j'utilise avec succès des secrets, ce que je demande est un projet de test de bibliothèque de classes. –
Désolé, j'ai oublié celui-là, je vais voir s'il y a une solution pour ça. – kloarubeek
celui-ci devrait faire l'affaire :-). Je pense que vous avez oublié le copyToOutput. – kloarubeek