Ce code d'application console appelle MSTest et commence à exécuter le test unitaire mais échoue avec "Accès refusé" à certains assemblys requis pour le test unitaire (voir les erreurs ci-dessous). Un moyen de faire en sorte que MSTest fonctionne correctement en tant qu'administrateur?Comment faire pour que MSTest s'exécute en tant qu'administrateur, lorsqu'il est appelé depuis une application de console?
J'ai essayé un manifeste, je n'ai rien changé, puisque le manifeste fait référence à l'application qui appelle, pas à mstest, non?
Vous avez également essayé de spécifier ProcessStartInfo.Username et Password, mais Password veut un SecureString spécial, et ce n'est PAS une application de console interactive, il est appelé par SVN sur un hook de pré-validation.
private static string MSTest()
{
if (File.Exists(@"C:\temp\TestProject1.trx"))
{
File.Delete(@"C:\temp\TestProject1.trx");
}
Process process = new Process();
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = @"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe";
psi.Arguments = String.Format
(
"/testcontainer:{0} /resultsfile:{1} /nologo",
@"C:\Users\johndoe\Documents\SVN_TEST\Test\branches\johndoe\WebApplication1\TestProject1\bin\Debug\TestProject1.dll",
@"C:\temp\TestProject1.trx"
);
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.RedirectStandardError = true;
process.StartInfo = psi;
process.Start();
string output = process.StandardOutput.ReadToEnd();
process.WaitForExit();
return output;
}
Erreur: commit a échoué (détails ci-après):
Erreur: commit bloqué par le crochet de pré-validation (code de sortie 1) avec sortie:
Erreur: Chargement C: \ Users \ johndoe \ Documents \ SVN_TEST \ test \ branches \ johndoe \ WebApplication1 \ TestProject1 \ bin \ Debug \ TestProject1.dll ...
erreur: Démarrage exécution ...
erreur:
erreur: Résultats de premier niveau tests
erreur: ---- --- ---------------
Erreur: Échec de Te stProject1.BankTest.DebitTest
Erreur: 0/1 test (s) passé, 1 Échec
Erreur:
Erreur: Résumé
Erreur: -------
Erreur: Test d'exécution a échoué.
Erreur: Impossible 1
Erreur: ---------
Erreur: Total 1
Erreur: fichier Résultats: C: \ temp \ TestProject1.trx
erreur: Paramètres de test: Tester les paramètres par défaut
erreur:
erreur: Run a la question suivante (s):
erreur: Avertissement: test d'exécution problème de déploiement: Impossible de déployer des dépendances pour le test
erreur: stockage
erreur: « c: \ users \ johndoe \ documents \ svn_test \ test \ branchements \ johndoe \ webapplication1 \ testproject1 \ bin \ debug \ test Project1.dll ':
Erreur: System.IO.FileLoadException: Impossible de charger le fichier ou l'assemblage
Erreur:' Microsoft.VisualStudio.QualityTools.Tips.UnitTest.AssemblyResolver,
Erreur: Version = 10.0.0.0, Culture = neutre, PublicKeyToken = b03f5f7f11d50a3a 'ou l'un des
Erreur: ses dépendances. L'accès est refusé.
Erreur: Nom du fichier: 'Microsoft.VisualStudio.QualityTools.Tips.UnitTest.AssemblyResolver,
Erreur: Version = 10.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'
Erreur: à System.Reflection.RuntimeAssembly._nLoad (AssemblyName fileName, String
erreur: codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint,
erreur: StackCrawlMark & stackMark, Boolean throwOnFileNotFound, Boolean
erreur: forIntrospection, booléens suppressSecurityChecks)
erreur: à System.Reflection.RuntimeAssembly.nload (AssemblyName fileName, String
Erreur: codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint,
Erreur: StackCrawlMark & stackMark, Boolean throwOnFileNotFound, Boolean
Erreur: forIntrospection, booléens suppressSecurityChecks)
erreur: à System.Reflection.RuntimeAssembly. InternalLoadAssemblyName (AssemblyName
erreur: assemblyRef, Evidence assemblySecurity, StackCrawlMark & stackMark, Boolean
erreur: forIntrospection, booléens suppressSecurityChecks)
erreur: à System.Reflection.RuntimeAssembly.Intern alLoad (String assemblyString,
Erreur: Evidence assemblySecurity, StackCrawlMark & stackMark, Boolean forIntrospection)
erreur: à System.Activator.CreateInstance (String assemblyName, String typeName,
Erreur: Boolean ignoreCase, BindingFlags bindingAttr, liant Binder, objet [] args,
erreur: culture CultureInfo, Object [] activationAttributes, Evidence securityInfo,
erreur: StackCrawlMark & stackMark)
erreur: à System.Activator.CreateInstance (String assemblyName, String typeName,
erreur: Boolean ignoreCase , Bindin gflags bindingAttr, liant Binder, Object [] args,
Erreur: culture CultureInfo, Object [] activationAttributes, Evidence securityInfo)
erreur: à System.AppDomain.CreateInstance (String assemblyName, String typeName,
Erreur: Boolean ignoreCase, BindingFlags bindingAttr, liant Binder, Object [] args,
erreur: culture CultureInfo, Object [] activationAttributes, SecurityAttributes Evidence)
erreur: à System.AppDomain.CreateInstanceAndUnwrap (String assemblyName, String
erreur: typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder Binder, Object []
Erreur: args, CultureInfo culture, objet [] activationAttributes, SecurityAttributes Evidence)
erreur: à System.AppDomain.CreateInstanceAndUnwrap (String assemblyName, String
erreur: typeName, Boolean ignoreCase, BindingFlags bindingAttr, liant Binder, objet []
erreur: args, CultureInfo culture, objet [] activationAttributes, SecurityAttributes Evidence)
erreur: à
erreur: Microsoft.VisualStudio.TestTools.Utility.AssemblyLoadStrategy.GetDependentAssemblies (String
erreur: chemin)
erreur: à
erreur: Microsoft.VisualStudio .TestTools.Utility.As semblyHelper.GetDependentAssemblies (String
erreur: chemin, options DependentAssemblyOptions, String ConfigFile)
erreur: à
erreur: Microsoft.VisualStudio.TestTools.TestManagement.DeploymentManager.GetDependencies (String
Erreur: maître, String configFile, TestRunConfiguration runConfig , DeploymentItemOrigin
erreur: dependencyOrigin, Liste 1 dependencyDeploymentItems, Dictionary
2 missingDependentAssemblies)
erreur: à
erreur: Microsoft.VisualStudio.TestTools.TestManagement.DeploymentManager.ProcessNewStorage (String
erreur: testStorage, aide DeploymentHelper, DeploymentItemOriginType originType,
erreur: Liste erreur: dependencyDeploymentItems, Dictionary`2 missingDependentAssemblies)