Przekierowanie stdout z innego programu w C ++

Piszę test jednostkowy i dlatego nie mogę zmienić kodu w testowanym pliku. Kod, który testuję, zawiera wiadomości w cout, które próbuję przekierować do pliku, aby sprawdzić, czy program wysyła odpowiednie komunikaty. Czy ktoś ma sposób na przekierowanie stdout w innym programie, który nie spowoduje opóźnienia? Próbowałem freopen () i to powoduje, że mój program zawiesza się z jakiegoś powodu.

questionAnswers(2)

yourAnswerToTheQuestion