Комментарии 6
Спасибо за статью. Надо попробовать мутационное тестирование.
В Dimension-DB периодически запускаю тесты с различными комбинациями параметров (1,1 млн. запусков для всех комбинаций параметров). Несколько раз так ловил баги.
Разные комбинации параметров — это вам лучше в сторону property-based тестирования смотреть.
В джаве с мутациями будут те же самые проблемы, что мне пришлось решать в эликсире: компилируемый язык, а значит — нужно сначала правильно минимизировать количество необходимых перекомпиляций. Но мне иногда прям помогало, хотя я никогда не запускал их на весь проект, только на изменения, которые не сразу понятно, как тестировать — тогда время выполнения приемлемое.
Вообще, из относительно родственного — генерация тестов для компиляторов. A Survey of Compiler Testing, за авторством Chen et al, 2020 года, к примеру.
Но это всё да, как-то бесконечно круто для кровавого ынтерпрайза.
Да, и Питон сейчас тоже в байткоде. Но мысель понятна...
Я тут некоторое время подумал насчёт этого тестирования, а потом решил таки поискать, что же люди пишут. Нашёл сразу https://web.eecs.umich.edu/~weimerw/2022-481F/readings/mutation-testing.pdf
Выяснилось, что там вообще огромная тема, со своей теорией, от которой мы видим лишь верхушку.

Мутационное тестирование (Как я учил байт-код плавать)