Вопрос

Я наткнулся на распечатанное статья Бертрана Мейера где он утверждает, что тесты могут быть созданы на основе спецификаций.Моя команда разработчиков ничего подобного не делает, но, похоже, это хороший метод, который стоит рассмотреть.Как вы генерируете тесты на основе спецификаций?Как бы вы описали свой успех в обнаружении ошибок программы с помощью этого метода?

Это было полезно?

Решение

Есть множество способов сделать это, начиная от того, что я считаю «формой искусства» (и не обязательно хорошим искусством), и заканчивая математически выведенными тестами на основе формальных спецификаций.В конце концов, вашей команде разработчиков необходимо решить, что они могут делать в соответствии с графиком, по которому они работают.При этом возможность тестировать программное обеспечение на соответствие спецификациям — это хорошо.

Только ваша команда может оценить «глубину» ваших тестов, и это, вероятно, будет зависеть от того, насколько хороши ваши спецификации.Если они скажут что-то вроде: «В пользовательском интерфейсе входа должны быть кнопки отмены и кнопки входа, и они должны работать», ваши тесты будут довольно общими.Но имейте в виду: даже самые общие тесты – это хорошо.Тестирование — это хорошо.Слишком многие разработчики плохо относятся к тестированию, но, в конце концов, вы поставляете программное обеспечение, которое должно работать, и для меня это очень много значит.

Эффективность ваших тестов в поиске ошибок в программе будет зависеть от того, насколько подробно вы их внесете.Что особенно приятно в том, что процедуры тестирования написаны в соответствии со спецификациями, так это то, что вы можете протестировать каждую сборку с тем же уровнем детализации, что и предыдущая сборка (обычно это называется регрессионным тестом).

Другие советы

Это может быть отсылка к РСпец, что является действительно умным способом разработки тестов как серии требований.Я все еще привыкаю к ​​этому, но это было очень удобно как для определения того, что мне нужно сделать, так и для обеспечения того, чтобы я это сделал.

@Тим Салливан из Бертрана Мейера, это может быть связано только с Эйфелевой :)

Я думаю, он говорит о ЭСпец.Учитывая название RSpec от Ruby Folk, я думаю, мы можем дать им ярлык «очень вдохновленные».

Я бы сказал, что это зависит от ваших характеристик.Мне еще не приходилось работать где-либо, где спецификации были достаточно хороши, чтобы создавать полные модульные тесты на основе спецификаций — уровня детализации там просто не было.Мои менеджеры всегда говорили нам, что если мы укажем этот уровень, они смогут просто отправить спецификации в Индию и закодировать их по дешевке;)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top