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/04/08 07:34]
kalishenko
courses:testing:lectures [2022/12/30 12:09]
kalishenko
Line 120: Line 120:
     * Предусловия     * Предусловия
     * Шаги ​     * Шаги ​
- 
------------ 
  
 ===== Тестирование интерфейса пользователя (Desktop) ===== ===== Тестирование интерфейса пользователя (Desktop) =====
 ==== Теория ==== ==== Теория ====
   - Примеры технологий разработки интерфейса и соответствие инструментов тестирования со знанием идентификаторов элементов интерфейса:​   - Примеры технологий разработки интерфейса и соответствие инструментов тестирования со знанием идентификаторов элементов интерфейса:​
-    * Java/Swing или SWT: ? 
     * Qt: Squish     * Qt: Squish
     * JS: Selenium     * JS: Selenium
-    * Windows forms: ? 
   - Применение компьютерного зрения:​ Sikuli   - Применение компьютерного зрения:​ Sikuli
 +    * Архитектура
 +    * OpenCV
 +    * Tesseract
 +    * Jython ​
   - Применение машинного обучения:​ Testolang   - Применение машинного обучения:​ Testolang
 +    * Архитектура
 +    * QEMU/KVM
 +    * Нейронные сети ​
  
 ==== Практика ==== ==== Практика ====
-  - Sikuli +  - Sikuli
-  - Testolang+    * Подключение sikuli в Python 
 +    * Тест сложения в калькуляторе передачей нажатия клавиш 
 +    * Фиксация изображений для поиска 
 +    * Параметры поиска изображения 
 + 
 +===== Исследовательское тестирование ===== 
 +  - Test strategy model: 
 +    * Function 
 +    * Claims 
 +    * Domain 
 +    * User 
 +    * Stress 
 +    * Risk 
 +    * Flow 
 +    * Automatic 
 +    * Scenario  
 +  - Заведение ошибок:​ 
 +    * Поля 
 +    * Поиск дубликатов по стекам ​
  
 ===== 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