Я пытаюсь прочитать стандартную ошибку и стандартный вывод ASP. Net Базовое веб-приложение в коде (C#) для интеграционного теста. У меня есть следующий код:
Process process = null
try
{
var startInfo = new ProcessStartInfo("dotnet", "myWebApp.dll")
{
UseShellExecute = false,
RedirectStandardError = true,
RedirectStandardOutput = true,
CreateNoWindow = true,
};
process = Process.Start(startInfo);
//Do stuff with process.StandardError and process.StandardOutput
}
finally
{
process?.Kill();
process?.Dispose();
}
Это работает в том, что я получаю стандартную ошибку и стандартные выходные потоки и могу их прочитать. Проблема возникает, когда я пытаюсь взаимодействовать с запущенным процессом (моим веб-приложением).
Стандартный вывод указывает, что приложение правильно запустилось, и содержит строку:
Сейчас прослушивание: https://localhost: XXXX
Однако, если я отправлю веб-запрос на https://localhost: XXXX Я не получу ответа, и задача в итоге отменили. Есть ли лучший способ запуска веб-приложения в коде, который позволит мне получать доступ к стандартным выводам и стандартным потокам ошибок, а также позволяет отправлять веб-запросы?