Я использую Process.Start в plink.exe для запуска удаленного вызова на компьютере с Linux. Это работает хорошо, если не запускать в контексте NUnit (я пробовал как TestDriven.NET, так и средство запуска модульных тестов ReSharper).
В тесте NUnit кажется, что процесс сразу же закрывается и фактически ничего не делает, как будто что-то заставляет его закрыться.
Вот код, обратите внимание, что в контексте консольного приложения он работает отлично.
var processStartInfo = new ProcessStartInfo();
processStartInfo.FileName = @"D:\Tools\plink\plink.exe";
processStartInfo.Arguments = "-ssh #some parameters here#;
processStartInfo.UseShellExecute = false;
processStartInfo.RedirectStandardOutput = true;
var process = new Process();
process.StartInfo = processStartInfo;
process.Start();
var output = process.StandardOutput.ReadToEnd();