Одним из популярных методов тестирования программных продуктов является так называемое "нечеткое тестирование" (fuzzing). В нем программе предлагается обработать большое количество случайных и неправильно сформированных входных данных. Программа, написанная без ошибок, должна распознавать такие ситуации и корректно реагировать на них.

Но нечеткое тестирование требует больших затрат вычислительных ресурсов, и в компании Microsoft создали распределенную систему под названием Distributed Fuzzing Framework (DFF), основанную на тех же принципах, что и известный проект SETI@home. На многих компьютерах внутренней сети Microsoft были установлены клиентские программы DFF. Они автоматически запускаются в периоды, когда компьютер простаивает, и выполняют свою часть общей работы. Благодаря этому тестирование, которое раньше занимало несколько суток, теперь выполняется за считанные часы.

На конференции CanSecWest представитель Microsoft рассказал, что с помощью DFF разработчики Office 2010 исправили 1800 ошибок, в том числе угрожавших безопасности пакета.
 

Поделитесь материалом с коллегами и друзьями