Как проверить операторы печати?

Вы хотите написать unittest-cases для такой функции:

def test_me(a):
    for b in c:
        print do_something(a,b)

Сначала я думал просто собрать выходные данные do_somethingв строку, а затем вернуть ее, распечатать и протестировать весь вывод вместе. Но это не всегда удобно, потому что такие циклы могут привести к тому, что ваша буферная строка станет очень большой, в зависимости от обстоятельств. Итак, что вы можете сделать, чтобы проверить вывод, когда он напечатан и не возвращен?

18
задан erikbwork 20 June 2012 в 15:10
поделиться