web-dev-qa-db-fra.com

Les tests TFS ne correspondent pas aux paramètres du framework

J'essaie de déplacer une solution de TFS 2012 vers TFS 2018 SP2RC2 mais je n'arrive pas à faire fonctionner correctement les tests unitaires. Tous les projets ont été reciblés vers 4.7.1 et sont construits en tant que plate-forme x86. Nous avons un fichier de tests qui ne fournit que des éléments de déploiement. J'utilise la nouvelle tâche VSTest Platform Installer (comme indiqué par MS) et la tâche de test VS. Au début du test, j'obtiens le message suivant:

Test run will use DLL(s) built for framework .NETFramework,Version=v4.5 and platform X86. Following DLL(s) do not match framework/platform settings.

Tous les tests sont donc ignorés car ils visent 4.7.1. D'où vient ce paramètre 4.5? Je ne le trouve spécifié nulle part et je ne sais pas comment le changer.

20
Sam

Il y a un /Framework: paramètre que vous pouvez spécifier pour VSTest.

Dans votre cas, vous devez spécifier /Framework:.NETFramework,Version=v4.7.1

Voir plus sur https://msdn.Microsoft.com/en-us/library/jj155796.aspx?f=255&mspperror=-2147217396

5
Psddp

J'ai eu du mal à exécuter un projet de test développé sur une autre machine où aucun test ne pouvait être exécuté à l'aide du lanceur de test MSTest. En plus du message dans votre question, j'ai également reçu les messages:

Assurez-vous que le découvreur de test et les exécuteurs sont enregistrés et que les paramètres de version de la plateforme et du framework sont appropriés et réessayez.

Test de découverte terminé: 0 trouvé

Dans mon cas, je l'ai résolu en déchargeant et en mettant à jour le fichier .csproj en ajoutant l'importation suivante directement sous la balise racine Project.

<Import Project="..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props')" />

J'espère que cette réponse vous fera gagner du temps.

1
Michael Smale

J'ai eu cette erreur en utilisant Visual Studio 2019 avec NUnit 3.12.0:

Le test utilisera des DLL construites pour le framework .NETFramework, Version = v4.5 et la plateforme X86. Les DLL suivantes ne correspondent pas aux paramètres de framework/plateforme. Project.UnitTests.dll est conçu pour Framework 4.5.2 et Platform AnyCPU.

NUnit3TestAdapter installé 3.13.0 et puis tout a commencé à fonctionner. N'a pas eu besoin de modifier la version du Framework ou les paramètres du CPU.

0
Ogglas

NUnit3TestAdapter installé 3.13.0

Où as-tu trouvé ça? Je vois 3.12.0 comme la version la plus récente

0
Erik Norman