Какво добро модел уреди, акт, се твърди, както и дали да го използва винаги стека преливане на Руски

Виждам в този модел е само едно предимство: тя подобрява четимостта. И повече от минуси:

Първо, тя не винаги се подобрява четимостта. Ето един прост тест:

Вместо това, мога да напиша това:

Аз съм засегнат разбираемостта?

На второ място. Сега какво да правя с тестото?

Има също така да създадете 2 булеви променливи, а след това да ги сравни?

И трето. По мое мнение, този модел усложнява писането на някои тестове. Например:

31 се определя на 06:30 Март '16

Във всеки модел винаги може да се намери случай, в който тя изглежда нелепо. Мисля, че просто даде пример.

Класическите изследвания 3A модел (да, така че той е написал - три A), както следва:

  • код е разделена на три логически части.
  • функционални тестове тества две неща на кирилица, без странични ефекти.

анализиране на първия тест:

На второ място, тук е какво да правим с тестото?

И този тест просто трябва да пишат правилно. Някъде толкова

Виждате ли разликата? Не ВЕИ тип променлива. когато стойността не е ясно. Също така, ако списъка не трябва да е празен, тогава е необходимо да се изследват, а не обратното (виж, аз дори промени името на теста).

А сега погледнете последния тест

Този тест може да бъде пренаписана път през цикъла и след като той престава по-хубава и по-лесно. И няма нужда да се създаде един куп променливи.

Сега, ако искате да добавите още тестови стойности от 5-6, това е много проста.

Моето лично мнение. Вътре функциите на изпитване (т.е. assertEquals и подобни) не трябва да бъде сложни конструкции. След това, те са единица тестове, които ще тестват малката градивна единица на код. И ако размерът е все така например, методите, които променят предмета - не.

Ако имам една ситуация, която ми трябва prodebazhit функция / метод, който тествах, това е първата покана, функцията е сложна и е необходимо да се прекъсне или пренапише. Ако тестът се прекратява до много големи (и да се оплаквате за това), а след това на теста е написано не е наред - тя трябва или да бъде разделена на две по-малки, или да пишат правилно (I, например при професионалистите обичам да правя макро :)).

Но във всеки случай не е необходимо да страда мозъчни модели и да ги прилагат навсякъде. Вие трябва да ги прилага, както е необходимо.

Аз не съм писал в Java, така че кодът може да бъде малки грешки.