J'ai développé une large base de tests unitaires pour l'application de mon entreprise, et dev voudrais passer mes tests unitaires à notre service support pour les aider à déboguer les problèmes d'installation client . J'ai écrit mes tests unitaires en utilisant mstest, donc le support devrait installer Visual Studio sur la machine d'un client s'ils voulaient utiliser mes tests prêts à l'emploi, ce qui est la mauvaise chose à faire, évidemment. J'ai examiné dans l'utilisation de mstest sans VS à l'invite de commande, mais le piratage du registre sur le système d'un client pour lui faire croire que VS est installé n'est pas réalisable non plus. Pour contourner ce problème, j'ai planifié de compiler mes mstests pour nunit en utilisant les informations de this post. Cependant, après la compilation avec NUnit activé, et en ajoutant mon dll d'assemblage de test au runner NUnit, j'obtiens le message d'erreur "Cet assembly n'a pas été construit avec un framework connu".Unité testant l'installation d'un client (avec NUnit et MSTest)
Quelqu'un a-t-il fait cela et a-t-il des trucs et astuces pour le faire fonctionner? Ou est-ce la mauvaise façon de résoudre ce problème? Merci.
Pour moi, cela semble être une «solution» réalisable: extraire le cœur/le contenu de tous les tests unitaires, les placer dans une solution de bibliothèque de classes distincte, afin de pouvoir le distribuer. Bien sûr, vous devez ensuite séparer les Assert.Functions de la solution de bibliothèque de classes. Appelez les fonctions externalisées à partir du code de test de votre unité ou de votre outil de test externe. Ainsi, la bibliothèque de classes devient le noyau, et le framework MSTest, ou votre propre outil de test externe, devient le wrapper 'GUI'. Cela nécessite un refactoring/réécriture bien sûr, mais les tests réels restent les mêmes, n'est-ce pas? –