Как бы процесс считывал свой собственный поток вывода?Я пишу автоматизированные тесты, которые запускают несколько подпроцессов приложений (приложений) в том же процессе, что и тест.Таким образом, стандартный вывод представляет собой сочетание результатов тестирования и вывода приложения.
Я хочу прочитать поток вывода во время выполнения и провалить тест, если я вижу ошибки из приложения.Это возможно / возможно?Если да, то как мне это сделать?
Примечание. Я знаю, что могу запускать приложения как отдельные процессы и затем читать их выходные потоки.Это большая работа от того, где я сейчас нахожусь.
Также обратите внимание, что это не обман Как проверить вывод функции (stdout / stderr) в модульных тестах Go , хотя этот билет похож и полезен.Другой тикет о захвате вывода для одного вызова функции.Этот билет предназначен для непрерывного чтения всего потока.Правильный ответ тоже немного другой - для этого нужна труба.