1. Повторяющиеся действия выносить в отдельные методы, которые сами по себе тестами не являются. И уже их использовать в тестах.
2. Насчет того, чем жертвовать, я так и не понял, что Вы хотите сделать.
Если абстрагироваться от автотестирования, и обратится только к построению тестовой логики:
У меня три тест-кейса которые идут друг за другом. Они зависимы друг от друга, и чтобы убрать эту зависимость нужно сделать дополнительные избыточные шаги, которые увеличат время выполнения тестов и утяжелят сами тест-кейсы.
Стоит ли вообще убирать эту зависимость, если время выполнения при том увеличится?
Например. Я добавляю сущность, проверяю что она добавлена, удаляю ее. Следующий кейс - переименование сущности, то есть ее опять надо добавить (предыдущий кейс), переименовать, сделать проверку, удалить