QA вопросы : Вопрос 1 : 26

Что такое Fuzz Testing?

 

Уважаемые учащиеся ниже Вы сможете увидеть ответ, перед тем, как ответить, пожалуйста, постарайтесь написать для себя ответ на черновике, и только потом сравните наш ответ с Вашим: 

 

 

 

 

Верно ли наше решение?

Ответ:

Fuzz-тестирование – своего рода стресс-тест для программного обеспечения, суть которого заключается в обработке программным обеспечением большого объёма информации, содержащей заведомо неверные параметры.
Еще Фаззинг – методика тестирвоания, при которой на вход программы подается невалидные, непредусмотренные или случайные данные.

Что можно фазить? 
- Файлы
- Драйверы
- Приложения
- Веб-приложения
- Протоколы
- АРІ

Как можно фазить?
1. Генерация: случайные дынные(dumb); входные данные, сформированные по моделям (smart)
2. Мутация: изменение существующих входных данных

Фаззинг файлов:
1. Выбираем входные данные
2. Фаззер искажает эти данные
3. Фаззер запускает приложение с передачей ему искаженных данных
4. Фаззер перебирает входные данные
5. В случае возникновения ошибки, записываем данные и анализируем результат

Фаззинг протоколов:
1. Выбираем фаззер (свой или сторонний)
2. Создаем модели данных
3. Описываем параметры модели в входном файле
4. Запускаем фаззер
5. В случае возникновения ошибки, записывае данные и анализируем результат

Какие баги можно найти при помощи фаззинга:
1. Утечка памяти
2. Переполнение буфера
3. Неверные коды ошибок
4. Ошибки обработки входных данных
5. Отказ в обслуживании

Фаззинг в процессе тестирования:
1. Часть процесса тестирования безопасности
2. Стоит попробовать с другими видами тестирования
3. Необходимо знание протоколов и форматов данных
4. Документирование
1 балл


© Copyright © 2017 - 2019 Все права защищены. Бесплатное онлайн образование.