Я испортил несколько модульных тестов некоторое время назад, когда я прошел и реорганизовал их, чтобы сделать их более DRY - целью каждого теста было уже не ясно. Кажется, есть компромисс между читабельностью тестов и ремонтопригодностью. Если я оставлю дублированный код в модульных тестах, они станут более читабельными, но если я изменю SUT, мне придется отслеживать и измените каждую копию дублированного кода.
Согласны ли вы, что этот компромисс существует? Если да, предпочитаете ли вы, чтобы ваши тесты были читабельными или поддерживаемыми?