Обычно я называю свои тесты shouldDoXXXX
, где имя теста описывает, что оно должно делать для всех подобных контекстов.Так что я мог бы сказать shouldAddUpTwoNumbersCorrectly
.Это немного отличается от того, как это делают многие BDDers - толпе Ruby особенно нравится shouldAddTwoPlusTwoToMakeFour
, поэтому повторяем конкретный пример, который они используют.Что бы ни работало для вас!
Внутри теста я часто пишу комментарии как "Дано / Когда / Затем":
public void ShouldAddUpTwoNumbersCorrectly()
{
// Given two numbers
// When I give them to the summer
// Then the result should be the sum of the two numbers
}
Затем я заполняю код между комментариями.Если тест очень прост, я могу пропустить комментарии.
Я не беспокоюсь о читаемых на английском языке фреймворках для тестирования класса, потому что аудитория техническая и способна читать код.Платформы BDD, которые делают «Дано / Когда / Тогда», были созданы в основном для того, чтобы помочь в общении с нетехническими заинтересованными сторонами и чтобы поощрить разработчиков использовать их язык.Я не считаю их полезными на уровне класса.YMMV.