Что такое основа модульного тестирования?

На stackru я наткнулся на mbunit. На его странице говорится, что mbunit является структурой генеративного модульного тестирования, но я не могу найти нигде, описывающей, что такое среда генеративных модульных тестов.

Я надеялся получить:

  • Определение
  • Ссылки на статьи о том, что такое инфраструктура Generative Unit Test, а что нет.

1 ответ

Среда генеративного тестирования - это та, в которой сам код генерирует контрольные примеры.

Обычно вы пишете код для генерации тестовых случаев в соответствии с одним или несколькими предположениями, которые вы хотели бы проверить.

Я не знаком с самим mbunit, но, например, используя платформу генеративных тестов Clojure test.generative, вы можете написать такие тесты:

(defspec integers-closed-over-addition
  (fn [a b] (+' a b))                    ;; input fn
  [^long a ^long b]                      ;; input spec
  (assert (integer? %)))                 ;; 0 or more validator forms

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

Важным моментом является то, что вам не нужно указывать long Вале для тестирования - сама структура будет генерировать произвольные комбинации входных данных и проверять, что ваши утверждения верны в каждом случае.

Другие вопросы по тегам