Similar presentations:
Уровни тестирования программного обеспечения
1.
Manual QA courseLecture 5. Уровни тестирования программного обеспечения. Часть 1 +
Логика
Дорофеев Максим
2.
Уровни тестирования3.
Уровни тестирования.В тестировании ПО можно выделить 4 основные уровня тестирования:
- Acceptance testing;
- System testing;
- Integration testing;
- Unit testing;
4.
Модульное(Unit) - тестированиеПроцесс в программировании, позволяющий проверить на корректность
отдельные модули исходного кода программы.
Модульное тестирование – это всегда автоматизированное
тестирование!
5.
Модульное(Unit) - тестированиеЦель тестирования – Изолировать отдельные части программы и
показать, что по отдельности эти части работоспособны.
6.
Модульное(Unit) - тестированиеПроверяет функциональность и ищет
дефекты в частях приложения, которые
доступны и могут быть протестированы поотдельности (модули программ, объекты,
классы, функции и т.д.).
7.
Модульное(Unit) - тестированиеОбычно модульное тестирование
проводится вызывая код, который
необходимо проверить и при поддержке
сред разработки, таких как фреймворки для
модульного тестирования или инструменты
для отладки.
8.
Модульное(Unit) - тестированиеВсе найденные дефекты, как правило
исправляются в коде без формального их
описания в системе менеджмента багов
(Bug Tracking System).
9.
Модульное(Unit) – тестирование.Преимущества
- Поощрение изменений;
- Упрощение интеграции;
- Документирование кода;
- Отделение интерфейса от реализации.
10.
Модульное(Unit) – тестирование. Когдамодульное тестирование не работает.
- Сложный код;
- Результат известен лишь приблизительно;
- Ошибки интеграции и производительности;
- Общая низкая культура программирования;
- Проблемы с объектами – заглушками;
11.
Модульное(Unit) – тестирование.Объекты - заглушки
Mock – Object – Тип объектов, реализующий заданные аспекты
моделируемого программного окружения.
12.
Модульное(Unit) – тестирование.Инструментарий
Для Java:
- JUnit;
- TestNG;
Для Ruby:
- Rspec;
- TestUnit
13.
Модульное(Unit) – тестирование.Инструментарий
Для C#:
- NUnit;
- xUnit;
- MSTest.
14.
Модульное(Unit) – тестирование.Инструментарий
Для JavaScript:
- QUnit;
- Jasmine.
15.
Модульное(Unit) – тестирование. TDDОдин из наиболее эффективных подходов к
модульному тестированию - это подготовка
автоматизированных тестов до начала
основного этапа разработки ПО.
16.
Модульное(Unit) – тестирование. TDDЭто называется разработка от тестирования (testdriven development) или подход тестирования вначале
(test first approach). При этом подходе создаются и
интегрируются небольшие куски кода, напротив
которых запускаются тесты, написанные до начала
разработки.
17.
Модульное(Unit) – тестирование. TDDРазработка ведется до тех пор пока все
тесты не будут успешно пройдены.
18.
Модульное(Unit) – тестирование. TDD19.
TDD. ПреимуществаКачество тестов:
- 100% покрытие тестов;
- Модульные тесты;
- Изменения без страха;
20.
TDD. ПреимуществаКачество кода:
- Модульный, гибкий и расширяемый код;
- Всегда работающий код;
- Меньшее время отладки;
- Поощряет рефакторинг.
21.
TDD. Недостатки- Высокий порог вхождения;
- Ошибочный тест = ошибочный код;
- Поддержка большого количества тестов.
22.
BDD. Что это?Behavior – driven development:
- Ответвление от TDD;
- Связь кода с требованиями;
- Фокус не на тестах, а на поведении;
- Запись требований с помощью обычных фраз.
23.
BDD. Как это работает1. Описание требований заказчиком)))
24.
BDD. Как это работает2. Реализация функционала;
3. Проверка соответствия требованиям (тест прошел/ не прошел)
25.
BDD. Инструментарий- Java, Ruby, JavaScript, PHP – Cucumber
- C# - SpecFlow.
26.
BDD. Пример27.
ЛогикаПарадокс Монти Холла (автомобиль и
козы)
28.
29.
ЛогикаКак взвесить без весов реактивный
авиалайнер?
30.
ЛогикаПочему крышки канализационных люков
круглые?
31.
Можете ли вы установить, по какому принципу выстроена даннаяпоследовательность:
8290157346
32.
ЛогикаУ вас есть пять баночек с таблетками.
Нормальные таблетки весят по 10 грамм,
но есть одна баночка с дефектными
таблетками, которые весят по 9 грамм
каждая. Как при помощи одного
взвешивания определить в какой баночке
дефектные таблетки?