11. Тест-анализ на основе рисков (предугадывание ошибок) Flashcards
Дефект -
Изъян в разрабатываемом программном обеспечении, который может привести компонент или систему в целом к невозможности выполнить требуемую функцию или к неправильному выполнению функции, не соответствующему требованиям, то есть привести к сбою.
Сбой -
Это проявление дефекта.
Ошибка -
Это действие человека (в данном случае разработчика программы или разработчика
документации), которое приводит к появлению дефекта.
Инцидент -
Любое сообщение о сбое в системе или дефекте графического интерфейса, поступившее от пользователя системы через службу технической поддержки.
По времени появления программные ошибки можно разделить на (3):
● структурные ошибки набора;
● ошибки компиляции;
● ошибки периода выполнения.
Структурные ошибки -
Возникают непосредственно при наборе программы. Они определяются средой программирования либо при наборе программы, либо при компиляции, если в среду не встроено средство выявления подобных ошибок на стадии набора кода.
Ошибки компиляции -
возникают на стадии компиляции кода. Это могут быть ошибки в синтаксисе, неправильное использование конструкций языка (например, оператор else в операторе for), использование несуществующих объектов, методов или свойств, ссылки на несуществующие библиотеки.
Ошибки периода выполнения -
Возникают при выполнении программы, когда операционная система или виртуальная машина обнаруживает, что программа пытается выполнить недопустимое или невозможное действие (например, заполнить объём памяти, гораздо превышающий её реальный
объем, или выполнить деление на ноль).
По степени нарушения логики ошибки можно подразделить на (3):
● синтаксические;
● семантические;
● прагматические
Синтаксические ошибки -
Заключаются в нарушении правописания или пунктуации в записи выражений, операторов и т. п., т. е. в нарушении грамматических правил языка.
Семантические ошибки -
Заключаются в нарушении порядка операторов, параметров функций и
употреблении выражений.
Прагматические (логические) ошибки -
Заключаются в нарушении логики алгоритма, смысла вычислений и т.п. При тестировании ищутся конечно же прагматические ошибки, поскольку все остальные типы ошибок находятся ещё на стадии программирования.
Виды ошибок, обнаруживаемых в ходе выполнения программы (11):
- Функциональные ошибки
- Ошибки пользовательского интерфейса
- Ошибки удобства использования
- Ошибки инсталляции, деинсталляции, обновления
- Ошибки производительности
- Ошибки реакции на перегрузку
- Ошибки расширяемости/масштабируемости
- Ошибки адаптируемости
- Ошибки документации
- Ошибки взаимодействия со средой
- Ошибки реакции на ошибочные действия пользователя
Метод предугадывания ошибок -
Этот метод состоит в выявлении особенностей ПО и последующем составлении списка потенциальных багов на основании выявленных особенностей. Список потенциальных багов формируется на основе интуиции и личного опыта тестировщика, на догадках и предположениях и не ограничивается какими-либо правилами.
Предугадыванию ошибок способствует (8):
● анализ багов, найденных в прошлых релизах;
● опыт тестирования других программных продуктов;
● анализ багов, найденных пользователями после релиза;
● предыдущие результаты тестов;
● исследование ПО на наличие уязвимостей;
● изучение спецификации;
● изучение исходного кода программы;
● предупреждения операционной системы или браузера о возможных рисках и пр
Предугадывать ошибки можно двумя способами:
● локальное предугадывание ошибки;
● предугадывание ошибки методом «туров»
Локальное предугадывание ошибки -
Когда ошибка предугадывается тестировщиком случайно и лишь на основании его собственного опыта и интуиции. После информация об ошибке фиксируется в баг-трекере, но в дальнейшем никак не анализируется.
Предугадывание ошибки методом туров (Майк Келли) -
Целью тестирования по концепции «тура» является проверка определённым образом, а иногда и в определённом порядке всех мест в приложении, где может что-то пойти не так. При этой методике приложение представляется как незнакомый город, а тестировщик как будто турист.
Типы туров (6):
● туры по деловому центру (Tours of the Business District);
● туры по историческим районам (Tours Through the Historical District);
● туры по развлекательным районам (Tours Through the Entertainment District);
● туры по туристическим районам (Tours Through the Tourist District);
● туры по району отелей (Tours Through the Hotel District);
● туры по неблагополучным районам (Tours Through the Seedy District).