Що стосується класичного тестового зразка Arrange-Act-Assert , я часто зустрічаю себе з додаванням зустрічного твердження, яке передує Act. Таким чином, я знаю, що твердження, що минає, насправді проходить як результат дії.
Я вважаю це аналогічним червоному в червоно-зеленому-рефакторі, де лише якщо я бачив червону смужку під час мого тестування, я знаю, що зелена смужка означає, що я написав код, який має значення. Якщо я напишу прохідний тест, то будь-який код його задовольнить; Аналогічно, що стосується Arrange-Assert-Act-Assert, якщо моє перше твердження не вдасться, я знаю, що будь-який закон пройшов би остаточний Акт - так що він насправді нічого не підтверджував Акт.
Чи дотримуються ваші тести за цією схемою? Чому чи чому б ні?
Оновлення Пояснення: початкове твердження по суті є протилежним до кінцевого твердження. Це не твердження, що Arrange працював; це твердження, що Закон ще не працював.