Ошибки
компоновки это ошибки обнаруженные компоновщиком при объединении модулей программы.
Например предусмотрено обращение к подпрограмме другого модуля а при объединении
модулей данная подпрограмма не найдена или не стыкуется в списке параметров. Ошибка
выполнения это ошибки обнаруженные операционной системой аппаратными средствами или
пользователем при выполнении: 1. Ошибки некорректного использования переменных; 2.
Ошибки вычислений; 3. Ошибка взаимодействия модулей тоесть межмодульного интерфейса,
например нарушение типов и последовательности при передаче параметров не соблюдение
единства единиц измерение формальных и фактических параметров нарушение области действия
локальных и глобальных переменных. Ошибки определенных данных возникают при выполнении
операций ввода-вывода: ошибки передачи, ошибки преобразования, ошибки перезаписи и
ошибки данных. Логические ошибки имеют разную природу и могут следовать из ошибок
допущенных при проектировании например при выборе методов разработкой алгоритмов или
определение структуры данных(классов) а могут быть непосредственно обнесены при
кодировании модуля. Ошибки накопления погрешности возникают в результате накопления
погрешности результатов числовых вычислений. На сложность откладки влияют следующие
факторы: опосредственное проявление ошибок, возможность взаимного влияния ошибок,
возможность получения внешне одинаковых проявлений разных ошибок. Стохастические ошибки
это ошибки которые не могут проявиться от запуска к запуску может аннулироваться или
измениться внешнее проявление ошибок при внесении некоторых изменений в программу.
Методы по можно классифицировать следующим образом: 1) метод ручного тестирования- самый
простой и естественный способ откладки программы 2) метод индукции предусматривает
подробный анализ проявления ошибки это могут быть неверные результаты вычислений или
сообщения об ошибке 3) метод дедукции работает по следующим алгоритмам сначала формирует
множество причин которые могли бы вызвать данное проявление ошибки затем анализируя
причины исключает те которые противоречат имеющимся данным если все причины исключены
то следует выполнить дополнительное тестирования исследования программы в противном
случае наиболее вероятную гипотезу пытаются доказать если гипотеза доказана проверяют
следующие 4) метод обратного прослеживания используется для небольших программ и
заключается в следующем определяется точка вывода неправильного результата затем строится
гипотеза о основных переменных затем исходя из гипотезы делают предположение. Категории
программных ошибок: функциональные недостатки, недостатки пользовательского интерфейса,
недостаточная производительность, некорректная обработка ошибок, некорректная обработка
ограниченных условий. Ошибки вычислений. Ошибки управления потоком. Ситуация гонок.
Ошибка перегрузки. Некорректная работа с аппаратурой компьютера.
Методы тестирования.
Структурное тестирование является одним из видов тестирования белого ящика. Его главная идея
правильный выбор тестирования программного пути. Противоположное ему тестирование
функциональное тестирования является одним из метод черного ящика. Каждая функция
программы тестируется путем ввода в нее входных данных и анализа выходных. При этом
внутренняя структура программы учитывается очень редко.
Бета тестирование это уже интенсивное использование готовой версии программы с полным
набором функций. Целью его является выявление максимального числа ошибок в работе ПО для
их последующего устранения перед окончательным выводом продукта на рынок, к массовому
потреблению.