Файл: Отладка и тестирование программ: основные подходы и ограничения (Разработка проекта тестирования программы «Помощник администратора»).pdf
Добавлен: 01.04.2023
Просмотров: 407
Скачиваний: 1
СОДЕРЖАНИЕ
ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ ИЗУЧЕНИЯ ТЕСТИРОВАНИЯ И ОТЛАДКИ И ОТЛАДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
1.1 История тестирования программного обеспечения
1.2 Принципы тестирование и отладка программного обеспечения
1.3 Этапы, цели и задачи тестирования программного обеспечения
1.4 Комплексное, исходящее и нисходящее тестирование программного обеспечения
ГЛАВА 2. СТРАТЕГИЯ ТЕСТИРОВАНИЯ И ОТЛАДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
2.4 Методы отладки программного обеспечения
ГЛАВА 3. Разработка проекта тестирования программы «Помощник администратора»
3.2 Выбор и обоснование методик тестирования
3.3 Планирование процесса тестирования
- Покрытие условий, в чем-то схоже с покрытием решений и направлено на факт проведения проверки истинной или же ложной результативности любого логического выражения. Данная методика включает к себя тестирование, которое направлено на проверку выражения независимо друг от друга. Результаты таких проверок идентичны тем, которые удается получить с использованием методики покрытия решений, кроме того, что сама методика покрытия более чувствительна к логической составляющей ПП [1,c.148]
2.3 Метод «черного ящика»
Тестирование на базе стратегии черного ящика можно провести только тогда, когда есть установленные открытые пользовательские интерфейсы приложения (API). В том случае, если тестирование базе стратегии белого ящика занимается исследование внутренней работы ПП, то тестирование базе стратегии черного ящика проводит сравнительный анализ приложений согласно предъявляемым требования.
Помимо этого, данные методики ориентированы на выявление 3 ключевых типов ошибок, а именно: функционала, который поддерживается ПП; проведенных вычислений; допустимого диапазона или области действия значений данных, которые можно обработать ПП.
На таком уровне тестировщики не занимаются исследованием внутренней работы составляющих ПП, однако проверяются они неявно.
Группа тестирования занимается изучением данных входа и выхода ПП. При таком раскладе тестирование с использованием методик черного ящика можно рассматривать в качестве синонима тестировании системного, несмотря на то, что методики черного ящика могут быть использованы в модульном или компонентном тестировании.
При проведении тестирования методиками черного ящика важную роль играют пользователи, ведь они лучше понимают, чего именно они ждут от программы. Ключ успешного окончания системного тестирования- это правильность и корректность данных, по этой причине на этапе формирования данных для проведения тестирования очень важно, чтобы итоговый пользователь предоставил максимум информации относительно входных данных. Тестирование такими методиками ориентировано на получение множеств входных данных, которые в полной мере проверяют все требования к функционалу системы, стоит отметить, что это не является альтернативой тестированию по методикам белого ящика.
Эта разновидность тестирования ориентирована на выявление ошибок, которые относятся к категориям, изложенным ниже:
- пропущенный или ошибочный функционал
- неудобное использование
- методики тестирования на базе автоматизированных инструментов
- ошибки в структурных данных или в доступе к внешним БД
- падение производительности и прочие ошибки, связанные с производительностью
- ошибки при загрузке
- ошибки при многопользовательском доступе
- проблемы с безопасностью.[7,c.116]
Методики тестирования на базе стратегии черного ящика:
- эквивалентная разбивка. По сути, невозможно осуществить исчерпывающее тестирование входных данных, именно по этой причине нужно провести тестирование с применением множества входных данных.
В процессе тестирования тех ошибок, которые взаимосвязаны с выходом за рамки области допустимого значения, как правило, используется 3 ключевых разновидности эквивалентных классов: значимость группы в рамках диапазона и на его границах. Кроме того, в полной мере оправдывает себя практика формирования тестовых процедур, где идет проверка граничных случаев, чтобы не допустить далее пропуска ошибок типа на 1+ или на 1-.
Помимо процессов разработки тестовой процедуры, которая применяется особенно сткутурированными классами эквивалентности, перед группой тестировщиков стоит задача проведения исследовательского исследования. те тестовые процедуры, при исполнении которых все же были получены ожидаемые результаты – это правильные тесты. Тестовые процедуры, в процессе исполнения которых, была получена ожидаемая результативность- это правильные тесты, в то время как тесты, использование которых должно привести к ошибке- это неправильные тесты.
Анализ граничных значений. Такой анализ можно использовать на структурном и функциональном этапах тестирования. Границами определено 3 вида данных: правильные, граничные, неправильные. Процесс тестирования первых применяет те значения, которые находятся в рамках границ, или непосредственно на границы, а так же максимальное или минимальное значение.
При проведении такого исследования необходимо учесть значение на 2 больше ил меньше лежащего на границе. При проведении тестирования за границами применяется репрезентативная схема образца данных, которые оказываются за границами, есть говорить проще, то ошибочных значений.
Диаграммы причинно-следственных связей. Процесс составления диаграммы причинно-следственных связей – это та самая методика, которая позволяет сформировать максимальное полное представление о логических условиях и соответствующих действиях. В эту методику входит 4 этапа, на первом составляется список причин и следствий для модуля и каждому модулю присевается идентификатор. Следующий этап подразумевает разработку диаграммы причинно-следственных связей. Третий этап заключается в преобразовании решений в таблицу, а последний это установка следствий и причин при чтении спецификации функций. У каждой причины и у каждого следствия уже есть личный идентификатор. Сами по себе причины записываются в столбик на левой половине страницы, а причины так же записываются в столбик, но на противоположной половине страницы.
После этого причины и следствия соединяются меж собой линиями таким образом, чтобы было видно соответствия меж ними.
На диаграмме изображают булевы выражения, которые объединили в селе несколько причин, напрямую связанных со следствием. Затем правила таблицы решений превращаются в тестовые процедуры.
- Системное тестирование, такой термин нередко используют в качестве синонима к фразе «тестирования с помощью методов черного ящика», а все потому, что в процессе проведения системного тестировании тестировщики в базовом внешнем поведении вынуждены рассматривать приложения. Такой тип тестирована – это несколько модулей тестирования, включая регрессионный, перезагрузок, удобства пользования, функционал, рандом, сохранность и преобразование информации, сохранение резервной копии, способности восстанавливаться, уровень готовности к работе, приемо-сдаточные испытания и альфа/бета тестирование.
- Функциональное тестирование. Такой тип тестирования проверяет системное приложение на предмет функциональных требований, чтобы можно было выявить все несоответствия требованиям конечных пользователей. По отношению к большей части программ по тестированию ПП это метод ключевой и основной. Главной его задачей является оценка приложении на соответствие его работы с требованиями, которые к нему предъявлены.
- Регрессионное тестирование. Сам смысле проведения такого типа тестирования- это найти и обнаружить все дефекты и недочеты, задокументировать их и следить пока их не устранят. Тестировщик должен быть точно уверен в том, что меры, которые принимаются для того, чтобы исправить выявленные ошибки, не станут причиной возникновения новых ошибок. Такой тип тестирования дает возможность проверить, не появились ли новые ошибки при устранении старых. Именно для этого типа тестировании активно используются инструменты автоматизированного тестирования и это имеет хорошую отдачу. все написанные скрипты можно использовать с целью подтверждения того факта, что в итоге изменений, которые были сделаны, чтобы исправить ошибки, не появились новые ошибки. Этой цели довольно легко достигнуть, ведь скрипты можно использовать автоматически и неоднократно.
- Тестирование безопасности- это в том числе проверка работы системы доступа к информации. Для этого разработчики изобретают тестовые процедуру и, прилагая максимум усилий, пытаются взломать защиту.
Тестировшик занимается проверкой уровня безопасности и ограничения, что дает возможность выявить уровень соответствия заявленным требованиям безопастисти и того, насколько они соответствуют правилам системы от о безопасности системы в общем.
- Тестирование перегрузок. В процессе тестирования перезагрузки проводится проверка системы без учета ограничений архитектуры чтобы выявить все технические ограничения системы. Данные тести проводятся на пике обработки транзакций и при процессе непрерывной загрузки больного объема информации. Процесс тестирования перезагрузки дает возможность измерения пропускной способности системы и ее эластичности на всех аппаратных платформах. Эта методика одновременно обращается к некоторым функциям системы со стороны не одного, а множества пользователей, при условии, что некоторые занимаются вводом значений, которые выходят за пределы нормальных и установленных нормой. Система должна обработать огромное количество информации или выполнить большое количество функциональных запросов за короткий промежуток времени.
- Тестирование производительности. Такого рода тесты нацелены на проверку уровня удовлетворения системного приложения по уровню производительности. При использовании такого тестирования появляется возможность замеров и составления отчетов по показателям скорости передачи данных входного и выходного характера, общее количество действий ввода и вывода информации, средний показатель времени, которое база потратил на отклик, интенсивность использования центрального процессора. Традиционно для автоматической проверки уровня производительности, которая проводится в рамках тестирования производительности, применятся те же самые инструменты, которые используются при тестировании перезагрузки.
- Тестирование удобства использования, такое тестирование ориентирован ан то, чтобы конечному пользователю было удобно, а интерфейс радовал глаз. Тут в работе системы в первую очередь учитывается человеческий фактор, тестировщик должен оценить ПП не как профессионал и высококвалифицированный специалист, а как стандартный пользователь [12]
2.4 Методы отладки программного обеспечения
Отладка программы в любом случае рассматривает логические решения данных об ошибках, большую часть которых можно определить по косвенным признакам при помощи проведения тщательного анализа текста программы и результативности тестов, без получения дополнительных сведений и данных. То есть, при помощи разного рода методик, таких как:
- ручное тестирование, которое является наипростейшим и самым естественным в этой группе. Если есть ошибки, протестировать программу надо вручную, с использованием коммутируемых тестов, в работе которых и зафиксирована ошибка. Методика крайне эффективна, но для большинства программ, особенно если в ней сложные расчеты, не подходит, особенно в том случае, если ошибка объединилась с ошибочным представлением компаний, занимающихся производством ТВ-шоу относительно производительности некоторых операций. Эта методика часто применяется как компонент иных способов устранить неисправности.
- Метод пролога частично базируется на подробном анализе использования симптомов ошибок, которые могут указать неверные данные расчета или выскочить в виде окна с ошибкой. Если ПК просто завис, то часть экрана с ошибкой вычисляется при помощи изучения происхождения полученной результативности и движений потребителя. Те данные, что удалось получить таким образом, нужно организовать и осторожно изучить при просмотре адекватной части программного кода. По результативности этих гипотез совершенствуется движение о неточностях и погрешностях, каждая из которых в обязательном порядке проверяется 1 и более раз.
Если гипотеза истина, то следует детализировать данные он ошибке несколько иначе, та именно усовершенствовать иную гипотезу, тут самым важным моментом является укладка текста симптомов Ошибки.
- Методика снижения. Именно тут в начинающемся наборе формы причин, которые могли стать причиной возникновения такой ошибке на дисплее. Потом проводится анализ причин, что противоречит доступным данным, отщепляет. Если все причины отщепляются, нужно провести еще одно тестирование того фрагмента, что исследуется. Если гипотеза может объяснить полученный знак ошибки, то сама ошибка не тут, далее проверяется следующая по списку причина.
- Метод обратной трассировки. Для небольших программ наиболее оптимально и эффективно приложение методики обратной трассировки. Прежде всего стоит начать с точки вывода неверного результата. Для этого в работе есть гипотеза относительно значения основной переменной, что могло стать причинно получении доступных результатов. Затем, происхождение заной гипотезы, нужно сформировать предложение о значимости переменные в предыдущей точке. Процесс продолжается, все же не узнавайте причину Ошибки. [11]
ГЛАВА 3. Разработка проекта тестирования программы «Помощник администратора»
3.1 Описание программы
Запрос на разработку программы поступил от стоматологической клиники. Руководство поставило цель – создать программный продукт, который бы помог увеличить скорость и эффективность работы администратора за счет своевременного предоставления ему актуальной информации об услугах клиники для успешного консультирования клиента.