2010-11-09 27 views
10

Certains tests reposent sur certains fichiers que j'ai marqués comme "Contenu" et sur "Toujours copier". J'utilise l'attribut DeploymentItem pour m'assurer qu'ils sont copiés dans le répertoire de sortie lors de l'exécution de mstest en dehors de VS. Cependant, lorsque vous utilisez le programme de test Resharper dans VS, ces fichiers ne le font jamais dans le répertoire à partir duquel il s'exécute. Quelqu'un sait comment réparer ceci?Le lanceur de test de l'unité de re-recherche ne trouve pas les fichiers de contenu

+0

Encore ce problème en 2015! C'est vraiment un mauvais spectacle de JetBrains. Leur infrastructure de test devient un peu fragile. Je pense que leur coureur de test devrait être assez intelligent pour copier des fichiers de contenu dans le répertoire de travail du coureur de test. –

Répondre

4

Nous avons résolu ce problème en marquant les fichiers de test en tant que ressources incorporées, puis en utilisant a utility method to read the embedded resource et en l'écrivant à l'emplacement prévu.

+0

Ceci est la manière la meilleure et la plus robuste de gérer les tests avec des dépendances sur des fichiers externes. J'ai abandonné sur les éléments de déploiement, même dans VS2012, il semble qu'avec ReSharper comme le coureur de test DeploymentItems sont encore imprévisibles. – nrjohnstone

+0

le lien est rompu –

8

La désactivation de l'option Resharper Unit Testing > Shadow-copy assemblies being tested a résolu ce problème pour moi.

+2

Nous ne voulions pas intégrer les ressources, donc pour nous - c'est une meilleure solution/réponse. +1 –