Если я хочу написать свой собственный test.cpp, который проверяет, выводит ли другой .cpp-файл так, как я хочу его выводить, есть ли способ сделать это без явной печати?Исправлена ошибка проверки модульного тестирования C++
Другими словами, существует ли что-нибудь, например, как
assert(output_of_file_being_tested, "this is the correct output");
где output_of_file_being_tested является то, что это должно быть «соиЬ» под ред.
Вы можете сделать что-то похожее на это: http://stackoverflow.com/questions/10150468/how-to-redirect-cin-and-cout-to-files –
Код более подвержен проверке, если вы избегаете писать такие вещи, как 'std :: cout' непосредственно и напишите в 'std :: ostream &' ссылки. Затем структура тестирования может проходить в объектах 'std :: ostringstream', тогда как приложение переходит в' std :: cout'. – Galik