当从Coded ui调用批处理文件时,MStest失败

时间:2015-02-24 18:31:35

标签: winforms batch-file mstest coded-ui-tests

我有一个用于运行mstest的批处理文件。点击批处理文件就可以正常执行文件了。但是,当从win表单应用程序调用相同的文件时,mstest会失败。这种行为似乎很古怪。任何人都可以提供任何理由。 我使用以下代码来调用它:

            Process myProcess = new Process();
            ProcessStartInfo myProcessStartInfo = new  ProcessStartInfo(@"D:\CodedUI\CommonAutomationFramework\Driver_batch.bat");
            myProcessStartInfo.UseShellExecute = false;
            myProcess.StartInfo = myProcessStartInfo;
            myProcess.Start();

1 个答案:

答案 0 :(得分:0)

到底失败了什么?测试或MSTest本身?

无论如何,批处理文件在命令行解释器(cmd)上执行命令。

在你开始的过程中,也许你应该开始'cmd.exe'。阅读批处理文件的内容并将它们传递给'cmd.exe'

像这样:

ProcessStartInfo processInfo;
Process process;

processInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
(...)

此处的“命令”是批处理文件中的文本。

你也可以试试这个:

System.Diagnostics.Process.Start(@"D:\CodedUI\CommonAutomationFramework\Driver_batch.bat");