用于测试C#控制台应用程序并生成分析结果的脚本

用于测试C#控制台应用程序并生成分析结果的脚本,c#,.net,scripting,mono,C#,.net,Scripting,Mono,我已经编写了一个C#console应用程序,其中我通过console.ReadLine()接受用户的一组输入。我返回集合中某个输入的可能替换项。这些替换项作为列表返回。现在,我想测试我的应用程序大约100组输入值,并想知道给定集合中每个输入变量可以替换多少。我还想知道每次运行的分析结果 有没有一种方法我不用自己测试100组代码就可以做到这一点?我希望有一种方法可以在某个文件(可能是csv文件)中列出我的输入集,每次输入都会从该文件重定向 如果有解决方案的话,我可以在linux中使用MONO。 谢

我已经编写了一个C#console应用程序,其中我通过
console.ReadLine()接受用户的一组输入。我返回集合中某个输入的可能替换项。这些替换项作为列表返回。现在,我想测试我的应用程序大约100组输入值,并想知道给定集合中每个输入变量可以替换多少。我还想知道每次运行的分析结果

有没有一种方法我不用自己测试100组代码就可以做到这一点?我希望有一种方法可以在某个文件(可能是csv文件)中列出我的输入集,每次输入都会从该文件重定向

如果有解决方案的话,我可以在linux中使用MONO。
谢谢-()

< p>你可以考虑使用<代码>进程< /Cord>类> < /p>
var processInfo = new ProcessStartInfo
{
    FileName = "consoleapp.exe",
    WindowStyle = ProcessWindowStyle.Hidden,
    CreateNoWindow = false,
    UseShellExecute = false,
    RedirectStandardOutput = true,
    RedirectStandardInput = true
};

using (Process clconfigureclient = Process.Start(processInfo))
{
    // Write input to your application.
    clconfigureclient.StandardInput.WriteLine(value1);
    clconfigureclient.StandardInput.WriteLine(value1);
    clconfigureclient.WaitForExit();
}

output = cm.StandardOutput.ReadToEnd();
// Do checks on output.

您试过了吗?即使我使用for循环并改变输入,如何获得.exe应用程序每次调用的评测结果?我不知道您希望运行哪种评测。只是执行的总时间?你可以用秒表计时。您的应用是否在windows性能监视器中录制?等等