SDCast

SDCast


SDCast #82: в гостях Алексей Денисов, программист, автор системы мутационного тестирования mull

July 16, 2018

Товарищи, что вы знаете про мутационное тестирование и как оно может помочь сделать ваш софт более качественным? А хотите узнать? — Тогда вам сюда! В этом выпуске у меня в гостях Алексей Денисов, скромный программист, автор системы мутационного тестирования mull (https://github.com/mull-project/mull). Помимо этого, Алексей занимается разработкой ПО для луноходов.

Вначале мы обсудили теоретическую часть:

* Что такое мутационное тестирование?
* Какое положение оно занимает среди других видов тестирования?
* В чем суть мутационного тестирования?
* Как изменение кода программы может помочь найти в ней дефекты?
* Как устроен процесс мутационного тестирования ПО?
* Какие есть сложности и проблемы?

Так же Алексей рассказал про историю появления проекта mull. Как он сам пришёл к идее написания инструмента для мутационного тестирования, как устроен mull, как LLVM помог в реализации проекта. Обсудили различные вопросы, связанные с оптимизацией, распараллеливанием выполнения задач тестов, диагностикой проблем и прочим.

Не обошли мы стороной и разработку ПО для луноходов. Алексей рассказал, как он попал в компанию, и какую роль в этом сыграло мутационное тестирование. Вкратце рассказал про компанию и чем она занимается, что за софт они пишут и как они его тестируют.

Ссылки на ресурсы по темам выпуска:

* Блог Алексея Денисова (https://lowlevelbits.org/)
* Доклад Алексея на FOSDEM'17 “Mutation Testing: Leaving the Stone Age (https://www.youtube.com/watch?v=YEgiyiICkpQ)”
* Mull (https://github.com/mull-project/mull). Mutation testing system built on top of LLVM
* Статья в блоге Алексея “LLVM-based Mutation Testing System. Request For Comments (https://lowlevelbits.org/llvm-based-mutation-testing-system.-request-for-comments/)”
* Выпуск #4 подкаста «Подлодка» (https://soundcloud.com/podlodka/podlodka-4-mutatsionnoe-testirovanie) с участием Алексея
* Страница на Википедии “Мутационное тестирование (https://ru.wikipedia.org/wiki/%D0%9C%D1%83%D1%82%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%BE%D0%B5_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)”


loaded