User Tools

Site Tools


courses:testing:lectures

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
courses:testing:lectures [2022/05/12 18:26]
kalishenko
courses:testing:lectures [2023/03/26 17:58]
kalishenko
Line 11: Line 11:
     * По уровню     * По уровню
     * По интерфейсу     * По интерфейсу
-  - Особенности тестирования протоколов 
-    * RPC: WSDL/SOAP + REST/JSON 
-    * Messaging 
   - Политика версионирования при тестировании:​   - Политика версионирования при тестировании:​
     * Альфа-версии     * Альфа-версии
     * Бета-версии     * Бета-версии
 +
 +===== Выбор вида тестирования =====
 +  - Пирамида тестирования:​
 +    * Приоритеты различных видов тестирования
 +    * Соотношение видов тестов
 +  - Принципы семантического версионирования
 +    * Стандарт версионирования
 +    * Пример на разделяемом протоколе взаимодействия
 +    * Пример на библиотечных решениях ​
  
 ===== Тестирование API. WSDL ===== ===== Тестирование API. WSDL =====
 ==== Теория ==== ==== Теория ====
 +  - Особенности тестирования протоколов
 +    * RPC: WSDL/SOAP + REST/JSON
 +    * Messaging
   - XSD-схемы - основы и примеры описания типов   - XSD-схемы - основы и примеры описания типов
   - WSDL-сервис - основы и пример описания методов   - WSDL-сервис - основы и пример описания методов
Line 31: Line 40:
     * Создание TestSuit     * Создание TestSuit
     * Проверки на основе XPath     * Проверки на основе XPath
-    * Валидация WSDL/​XSD ​ 
- 
-===== Выбор вида тестирования ===== 
-  - Пирамида тестирования:​ 
-    * Приоритеты различных видов тестирования 
-    * Соотношение видов тестов 
-  - Принципы семантического версионирования 
-    * Стандарт версионирования 
-    * Пример на разделяемом протоколе взаимодействия 
-    * Пример на библиотечных решениях ​ 
  
 ===== Тестирование API. REST ===== ===== Тестирование API. REST =====
Line 157: Line 156:
     * Поля     * Поля
     * Поиск дубликатов по стекам ​     * Поиск дубликатов по стекам ​
- 
------------ 
- 
  
 ===== Fuzzing-тестирование ===== ===== Fuzzing-тестирование =====
 ==== Теория ==== ==== Теория ====
-  - [[https://habr.com/​ru/​company/​dsec/​blog/​517596/​|Введение в fuzzing]]+  - Виды верификации: 
 +    * Статическая 
 +    * Динамическая (..., fuzzing, ...)  
 +  - Sanitizers:​ 
 +    * asan 
 +    * ubsan 
 +  - Генерация данных:​ 
 +    * Начальная ​выборка 
 +    * Контроль трасс исполнения 
 +    * Эволюционные алгоритмы 
 +  - Виды мутаций 
 +  - Критерии остановки тестирования
  
 ==== Практика ==== ==== Практика ====
-  - [[https://​github.com/​google/​fuzzing/​blob/​master/​tutorial/​libFuzzerTutorial.md|libfuzzing "Hello world"​]] +  - AFL fuzzer
-  - OSS-Fuzz +    * Сборка clang с ключами asan и ubsan 
-    * [[https://​google.github.io/​oss-fuzz/​|OSS-Fuzz документация]] +    * Создание тестовых данных для затравки 
-    * [[https://​github.com/​google/​oss-fuzz/​tree/​master/​projects|Список проектов под OSS-Fuzz]] +    * Пример на дереве условных ​операторов 
-  - [[https://​github.com/​microsoft/​restler-fuzzer|RESTler документация и репозиторий]]  +    * Запуск afl-fuzz и разъяснение полей, выводимых в runtime 
-  - [[https://​github.com/​schemathesis/​schemathesis|Schemathesis документация и репозиторий]]+    * Разбор результата поска падения приложения 
 + 
 +===== Ещё о test design ===== 
 +<WRAP center round tip 60%> 
 +Дозаполнить 
 +</​WRAP>​ 
  
courses/testing/lectures.txt · Last modified: 2023/06/09 20:11 by kalishenko