Слайд 2Agenda
проблема Code Coverage подхода
что такое Мутационное тестирование
предложения по улучшению
практика
Слайд 3Проблема Code Coverage подхода
Code Coverage — мера, используемая при тестировании программного обеспечения.
Она показывает процент исходного кода программы, который был выполнен в процессе тестирования.
Слайд 4Что такое Мутационное тестирование
Это метод тестирования программного обеспечения, который включает небольшие изменения
кода программы
Слайд 5Виды мутаций
удалить оператор программы
заменить каждое логическое выражение на логическую константу «истина» или
«ложь»
заменить каждую арифметическую операцию на другую. Например, + на *, - или /
заменить каждую логическую операцию на другую. Например, > на >=, == или <=
заменить каждую переменную на другую (из той же области видимости). Переменные должны иметь одинаковые типы
…
замена объектов на null/nil
Кроме того существуют мутации для объектно-ориентированных языков, операторы для параллельного программирования, операторы для структур данных, таких как контейнеры и др.
Слайд 6Предложения по улучшению
Проведение периодического мутационного тестирования
Изменение/дополнение уже существующих тестов
Рассказать про мутационное тестирование
своим коллегам/родителям/друзьям/прохожим на улице
Слайд 8А что, если после внедрения некоторых мутаций программа станет более полезной и
с меньшим количеством баг?