При именовании тестовых методов я следую шаблону shouldDoSomethingWhenSomeConditionHolds
.
Внутри теста принято следовать следующему шаблону интервалов:
@Test
shouldReturnAccountBalenceWhenGetBalenceIsCalled() {
// Some lines
// of setup code
// go here.
// The action being tested happens after a blank line.
// An assertion follows another blank line.
}
Некоторые настаивают только на одном утверждении на тест, но это далеко не универсально.
DRY (Don't Repeat Yourself) в меньшей степени учитывается в тестовом коде, чем в производственном. Хотя некоторые повторяющиеся коды следует поместить в метод setUp или класс testUtils, стремление к нулевому повторению в тестовом коде приведет к жестко связанным и негибким тестам, что препятствует рефакторингу.
Рекомендую посмотреть эти видео для лучшего погружения в вопрос: