
Алексей Плетнёв
Базис-Центр
Когда число разработчиков в компании начинает исчисляться сотнями, а количество строк написанного ими кода – миллионами, тестирование такого ПО становится весьма нетривиальной задачей. Вместе с ростом числа программистов, растёт и отдел тестирования ПО, множатся тесты, применяются новые методики.
Но даже код, покрытие которого близко к 100%, может и, как правило, содержит в себе ещё массу ошибок, отловить которые не под силу ни разработчику, ни тестировщику. Связано это с тем, что автотесты и функциональное тестирование не могут выявить большое количество специфических проблем, таких как, например, взаимная блокировка потоков или состояние гонки, связанных с ошибками проектирования многопоточных систем.
Поэтому на борьбу с багами выходят относительно новые типы ПО под общим названием SAST — системы статического анализа исходного кода. Сложность этих систем достаточно высока, учитывая их специфику. Из этого вытекает их высокая стоимость. Кроме того, интеграция такой системы в цикл разработки — дело отнюдь не простое, поэтому от её выбора напрямую зависит, вырастет ли эффективность работы технических отделов или же наоборот, она станет ненужной обузой или дорогой игрушкой.
Базис-Центр