Благодарю автора за ответственное отношение к выполнению заказа.
Подробнее о работе
Гарантия сервиса Автор24
Уникальность не ниже 50%
ВВЕДЕНИЕ 2
ГЛАВА 1 ОСНОВЫ ТЕСТИРОВАНИЯ ПРОГРАММ 4
1.1. Терминология тестирования программных продуктов 4
1.2. Существующие виды тестирования 6
1.3. Обзор существующих библиотек для проведения тестирования 8
Выводы по главе 1 14
ГЛАВА 2. ОБЗОР СРЕДСТВ И ТЕХНОЛОГИЙ АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ 15
2.1. Анализ функциональных возможностей системы Soap UI и Selenium 15
2.2. Анализ возможностей средства Ranorex и Rational Functional Tester 19
2.3 Анализ преимуществ и недостатков автоматизации тестирования программ 23
Выводы по главе 2 24
ГЛАВА 3 СПЕЦИФИКА РЕАЛИЗАЦИИ ПРОЦЕССА ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 25
3.1. Разработка и описание проекта для проведения тестирования 25
3.2. Конфигурация и применение средства автоматизации тестирования Jenkins 28
Выводы по главе 3 32
ЗАКЛЮЧЕНИЕ 33
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 35
1.1. Терминология тестирования программных продуктов
Тестирование программного обеспечения (ПО) – производственная деятельность, направленная на определение оценки и обеспечение повышения качества ПО. Необходимость подобной деятельности базируется на важности своевременного обнаружения различных проблем и дефектов в разрабатываемых программных системах.
Тест – выполняемая тестовая процедура с заданными входными данными, набором исходных условий и вариантами ожидаемых результатов, которая должна быть выполнена для заданной цели. В качестве такой цели, как правило, выступает проверка нужного ПО или проведение верификации работы программы по конкретным требованиям.
Компонент – набор функций, который будет использоваться многократно в различных тестах [4].
Создание тестов или компонентов происходит путем записи сеанса работы с приложением или web-сайтом.
...
1.2. Существующие виды тестирования
Современные виды тестирования ПО, в зависимости от необходимых поставленных целей и технических заданий, часто классифицирую на такие обобщенные группы [5]:
- Функциональный вид тестирования ПО.
- Нефункциональные вид тестирования ПО.
- Вид тестирования ПО, сопряженный с возможными изменениями.
Функциональные тесты основываются на наборах функций и их особенностях, а также учитывают специфику взаимодействия с другими системами или подсистемами, как правило, представлены на таких уровнях тестирования: модульном (компонентном), интеграционном, системном и приемочном. Такие виды тестирования предназначены для рассмотрения внешних моделей поведения разрабатываемых систем.
К наиболее распространенным видам функциональных тестов чаще всего относятся [7]:
• Функциональное тестирование.
• Тестирование безопасности доступа.
• Тестирование специфики взаимодействия.
...
1.3. Обзор существующих библиотек для проведения тестирования
Языки программирования представляют собой формальные знаковые системы, предназначенные для записи компьютерных программ. Они определяют наборы различных синтаксических, лексических, семантических принципов и правил, на базе которых формируются программные комплексы и возможные действия, выполняемые пользователем. Главная черта высокоуровневых языков программирования - наличие механизмов абстракций, представляющих собой смысловые конструкции, которые описывают различные структуры данных, возможные операции над данными [12].
Спецификой современных языков программирования высокого уровня является отсутствие необходимости в учете особенностей отдельных архитектур и систем, что позволяет переносить и использовать разработанные приложения на разных компьютерах. Достаточно одной предварительной перекомпиляции программного продукта под конкретную операционную систему и архитектуру.
...
2.1. Анализ функциональных возможностей системы Soap UI и Selenium
SoapUI — это кроссплатформенное клиентское оконное приложение с открытым исходным кодом, лицензией GNU и реализацией на языке Java. Поддерживаются версии для Linux, Windows и MacOS.
Поддерживаются технологии SOAP/WDSL, REST, Web и HTTP, AMF, JDBC, JMS и системы автоматической сборки Maven, Hudson, Bamboo, Ant, JUnit и другие. Возможности интеграции с IDE IntellijIdeam, NetBeans, Eclipse.
SoapUI обладает гибкими возможностями для тестирования веб-сервисов путем отправки им сообщений и получения ответов.
SoapUI является одним из ведущих функциональных инструментов для тестирования SOA и Web-сервисов. С помощью понятного в использовании графическому пользовательскому интерфейсу, функциям корпоративного сегмента, данное приложение обеспечивает простоту и мобильность создания и выполнения функциональных, регрессионных и нагрузочные тестов разрабатываемого ПО.
...
2.2. Анализ возможностей средства Ranorex и Rational Functional Tester
Ranorex является средством автоматизации тестирования GUI для тестирования настольных, web и мобильных приложений. Ranorex не имеет собственного языка сценариев, и использует в этом качестве стандартные языки программирования C# и VB.NET в качестве базы [9, 11].
Поддерживаемые приложения:
• Windows native (WinForms, WPF, Win32);
• Java;
• Qt;
• Delphi;
• Flex +;
• HTML.
Браузеры:
• Internet Explorer;
• Mozilla Firefox;
• Chrome;
• Safari.
Ranorex поддерживает возможности фиксации действий на базе применения интегрированного рекордера, идентификации различных элементов интерфейса пользователя при помощи инструмента Ranorex Spy. Все обнаруженные элементы хранятся в формате XML в соответствующих репозиториях. Отдельный элемент в них записан с помощью нотации XPath.
Исполнение тестов происходит путем последовательного запуска .exe файлов test-suite.
...
2.3 Анализ преимуществ и недостатков автоматизации тестирования программ
Проведенные выше исследования специфики организации и обеспечения процесса тестирования ПО в автоматическом режиме является основой для выделения основных достоинств и недостатков применения концепции автоматизации тестирования.
Преимущества автоматизации тестирования [4,6,7]:
- Повторяемость. Разработанные тестовые сценарии выполняться единообразно, «человеческий фактор» не оказывает на процесс неожиданных негативных влияний. Таким образом, тестировщик не сможет пропустить тест.
- Высокая скорость выполнения. Отсутствует необходимость в сверке этапов тестирования с инструкциями и регламентной документацией, что существенно уменьшает затраты времени на выполнение.
- Снижение затрат на поддержку. Поддержка готовых тестов и анализ результатов их работы не требуют таких затрат времени, как проведение этого объема работы вручную.
- Наличие гибких отчетов.
...
3.1. Разработка и описание проекта для проведения тестирования
Для разработки системы автоматизированного тестирования за основу был взят паттерн проектирования Page Object.
Page Object - один из самых полезных и используемых архитектурных решений в автоматизации.
Данный шаблон проектирования помогает инкапсулироваты работу с отдельными элементами страницы, что позволяет уменьшить количество кода и его поддержку. Если, например, дизайн одной из страниц изменен, то нам нужно будет переписать только соответствующий класс, описывающий эту страницу.
Благодаря данному шаблону проектирования удалось четко разделить описания страниц приложения и тесты. Создав для каждой страницы приложения отдельный класс и создав четкую иерархию наследования страниц приложения. Класс описывает страницу делиться на: описание веб-элементов страницы и действий над ними.
...
3.2. Конфигурация и применение средства автоматизации тестирования Jenkins
Для дальнейшей работоспособности тестов, следует создать новый job и настроить его (рис.9).
Для создания новой job в Jenkins, выбираем первый предложенный пункт. Это - основной и наиболее универсальный тип задач в Jenkins. Jenkins будет собирать наш проект, комбинируя любую SCM с любой сборочной системой.
Данный тип проектов может использоваться для задач, отличных от сборки ПО.
Рисунок 9 – Создание job
После того как job была создана, следует провести все настройки для удачного выполнения тестов.
На рис. 10 управления исходным кодом осуществляется с помощью «Git» (распределенная система управления версиями).
Система управления версиями (от англ Version Control System, VCS) - это программное обеспечение для облегчения работы с переменной информацией.
...
ЗАКЛЮЧЕНИЕ
В рамках первой главы данной работы рассмотрены основы тестирования программ. Рассмотрена современная терминология тестирования программных продуктов, проведен анализ существующих видов тестирования ПО. Осуществлен обзор существующих библиотек для обеспечения тестирования программ, написанных на различных языках программирования, таких как Java, С# и Groove. Выделены основные достоинства библиотеки тестирования NUnit, рассмотрена специфика библиотеки модульного тестирования JUnit.
Во второй главе приведены результаты проведенного обзора средств и технологий автоматизации процесса тестирования ПО. Описаны результаты проведенного анализа функциональных возможностей и достоинств Soap UI, Selenim, Ranorex и Rational Functional Tester, приведены примеры интерфейсов каждого из рассмотренных средств. Проведен анализ общих преимуществ и недостатков, характерных для концепции автоматизированного тестирования ПО.
...
1. Бейзер Б. Тестирование черного ящика. Технологии функционального тестирования программного обеспечения и систем. – СПб.: Издательский дом "ПИТЕР", 2014. – 426 с.
2. Бек К. Экстремальное программирование: разработка через тестирование. – СПб.:Питер, 2013. - 224 с.
3. Бернс Д. Selenium 2 средства тестирования: руководство для начинающих. – М.: Packt Publishing, 2012. - 285 с.
4. Блек Р. Ключевые процессы тестирования. – М.: Академия, 2013. - 544 c.
5. Веренинов И.А. Основы программирования. Учебное пособие. – СПб.: Издательство Политехнического университета, 2012. – 212 c.
6. Винниченко И.В. Автоматизация процессов. – СПб.: Питер, 2015. – 312 с.
7. Канер С. Тестирование программного обеспечения. – К.: ДиаСофт, 2014. — 612 с.
8. Коваленко Д. Selenium Design Patterns and Best Practices. – М.: PACKT Publishing, 2014. - 320 с.
9. Майерс Г. Искусство тестирования программ. – К.: Сандлєр, 2012. - 272 с.
10. Месарош Дж. Шаблоны тестирования xUnit. – СПб.: Вільямс, 2009. - 832 с.
и еще 10 источников.
Не подошла эта работа?
Закажи новую работу, сделанную по твоим требованиям
ВВЕДЕНИЕ 2
ГЛАВА 1 ОСНОВЫ ТЕСТИРОВАНИЯ ПРОГРАММ 4
1.1. Терминология тестирования программных продуктов 4
1.2. Существующие виды тестирования 6
1.3. Обзор существующих библиотек для проведения тестирования 8
Выводы по главе 1 14
ГЛАВА 2. ОБЗОР СРЕДСТВ И ТЕХНОЛОГИЙ АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ 15
2.1. Анализ функциональных возможностей системы Soap UI и Selenium 15
2.2. Анализ возможностей средства Ranorex и Rational Functional Tester 19
2.3 Анализ преимуществ и недостатков автоматизации тестирования программ 23
Выводы по главе 2 24
ГЛАВА 3 СПЕЦИФИКА РЕАЛИЗАЦИИ ПРОЦЕССА ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 25
3.1. Разработка и описание проекта для проведения тестирования 25
3.2. Конфигурация и применение средства автоматизации тестирования Jenkins 28
Выводы по главе 3 32
ЗАКЛЮЧЕНИЕ 33
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 35
1.1. Терминология тестирования программных продуктов
Тестирование программного обеспечения (ПО) – производственная деятельность, направленная на определение оценки и обеспечение повышения качества ПО. Необходимость подобной деятельности базируется на важности своевременного обнаружения различных проблем и дефектов в разрабатываемых программных системах.
Тест – выполняемая тестовая процедура с заданными входными данными, набором исходных условий и вариантами ожидаемых результатов, которая должна быть выполнена для заданной цели. В качестве такой цели, как правило, выступает проверка нужного ПО или проведение верификации работы программы по конкретным требованиям.
Компонент – набор функций, который будет использоваться многократно в различных тестах [4].
Создание тестов или компонентов происходит путем записи сеанса работы с приложением или web-сайтом.
...
1.2. Существующие виды тестирования
Современные виды тестирования ПО, в зависимости от необходимых поставленных целей и технических заданий, часто классифицирую на такие обобщенные группы [5]:
- Функциональный вид тестирования ПО.
- Нефункциональные вид тестирования ПО.
- Вид тестирования ПО, сопряженный с возможными изменениями.
Функциональные тесты основываются на наборах функций и их особенностях, а также учитывают специфику взаимодействия с другими системами или подсистемами, как правило, представлены на таких уровнях тестирования: модульном (компонентном), интеграционном, системном и приемочном. Такие виды тестирования предназначены для рассмотрения внешних моделей поведения разрабатываемых систем.
К наиболее распространенным видам функциональных тестов чаще всего относятся [7]:
• Функциональное тестирование.
• Тестирование безопасности доступа.
• Тестирование специфики взаимодействия.
...
1.3. Обзор существующих библиотек для проведения тестирования
Языки программирования представляют собой формальные знаковые системы, предназначенные для записи компьютерных программ. Они определяют наборы различных синтаксических, лексических, семантических принципов и правил, на базе которых формируются программные комплексы и возможные действия, выполняемые пользователем. Главная черта высокоуровневых языков программирования - наличие механизмов абстракций, представляющих собой смысловые конструкции, которые описывают различные структуры данных, возможные операции над данными [12].
Спецификой современных языков программирования высокого уровня является отсутствие необходимости в учете особенностей отдельных архитектур и систем, что позволяет переносить и использовать разработанные приложения на разных компьютерах. Достаточно одной предварительной перекомпиляции программного продукта под конкретную операционную систему и архитектуру.
...
2.1. Анализ функциональных возможностей системы Soap UI и Selenium
SoapUI — это кроссплатформенное клиентское оконное приложение с открытым исходным кодом, лицензией GNU и реализацией на языке Java. Поддерживаются версии для Linux, Windows и MacOS.
Поддерживаются технологии SOAP/WDSL, REST, Web и HTTP, AMF, JDBC, JMS и системы автоматической сборки Maven, Hudson, Bamboo, Ant, JUnit и другие. Возможности интеграции с IDE IntellijIdeam, NetBeans, Eclipse.
SoapUI обладает гибкими возможностями для тестирования веб-сервисов путем отправки им сообщений и получения ответов.
SoapUI является одним из ведущих функциональных инструментов для тестирования SOA и Web-сервисов. С помощью понятного в использовании графическому пользовательскому интерфейсу, функциям корпоративного сегмента, данное приложение обеспечивает простоту и мобильность создания и выполнения функциональных, регрессионных и нагрузочные тестов разрабатываемого ПО.
...
2.2. Анализ возможностей средства Ranorex и Rational Functional Tester
Ranorex является средством автоматизации тестирования GUI для тестирования настольных, web и мобильных приложений. Ranorex не имеет собственного языка сценариев, и использует в этом качестве стандартные языки программирования C# и VB.NET в качестве базы [9, 11].
Поддерживаемые приложения:
• Windows native (WinForms, WPF, Win32);
• Java;
• Qt;
• Delphi;
• Flex +;
• HTML.
Браузеры:
• Internet Explorer;
• Mozilla Firefox;
• Chrome;
• Safari.
Ranorex поддерживает возможности фиксации действий на базе применения интегрированного рекордера, идентификации различных элементов интерфейса пользователя при помощи инструмента Ranorex Spy. Все обнаруженные элементы хранятся в формате XML в соответствующих репозиториях. Отдельный элемент в них записан с помощью нотации XPath.
Исполнение тестов происходит путем последовательного запуска .exe файлов test-suite.
...
2.3 Анализ преимуществ и недостатков автоматизации тестирования программ
Проведенные выше исследования специфики организации и обеспечения процесса тестирования ПО в автоматическом режиме является основой для выделения основных достоинств и недостатков применения концепции автоматизации тестирования.
Преимущества автоматизации тестирования [4,6,7]:
- Повторяемость. Разработанные тестовые сценарии выполняться единообразно, «человеческий фактор» не оказывает на процесс неожиданных негативных влияний. Таким образом, тестировщик не сможет пропустить тест.
- Высокая скорость выполнения. Отсутствует необходимость в сверке этапов тестирования с инструкциями и регламентной документацией, что существенно уменьшает затраты времени на выполнение.
- Снижение затрат на поддержку. Поддержка готовых тестов и анализ результатов их работы не требуют таких затрат времени, как проведение этого объема работы вручную.
- Наличие гибких отчетов.
...
3.1. Разработка и описание проекта для проведения тестирования
Для разработки системы автоматизированного тестирования за основу был взят паттерн проектирования Page Object.
Page Object - один из самых полезных и используемых архитектурных решений в автоматизации.
Данный шаблон проектирования помогает инкапсулироваты работу с отдельными элементами страницы, что позволяет уменьшить количество кода и его поддержку. Если, например, дизайн одной из страниц изменен, то нам нужно будет переписать только соответствующий класс, описывающий эту страницу.
Благодаря данному шаблону проектирования удалось четко разделить описания страниц приложения и тесты. Создав для каждой страницы приложения отдельный класс и создав четкую иерархию наследования страниц приложения. Класс описывает страницу делиться на: описание веб-элементов страницы и действий над ними.
...
3.2. Конфигурация и применение средства автоматизации тестирования Jenkins
Для дальнейшей работоспособности тестов, следует создать новый job и настроить его (рис.9).
Для создания новой job в Jenkins, выбираем первый предложенный пункт. Это - основной и наиболее универсальный тип задач в Jenkins. Jenkins будет собирать наш проект, комбинируя любую SCM с любой сборочной системой.
Данный тип проектов может использоваться для задач, отличных от сборки ПО.
Рисунок 9 – Создание job
После того как job была создана, следует провести все настройки для удачного выполнения тестов.
На рис. 10 управления исходным кодом осуществляется с помощью «Git» (распределенная система управления версиями).
Система управления версиями (от англ Version Control System, VCS) - это программное обеспечение для облегчения работы с переменной информацией.
...
ЗАКЛЮЧЕНИЕ
В рамках первой главы данной работы рассмотрены основы тестирования программ. Рассмотрена современная терминология тестирования программных продуктов, проведен анализ существующих видов тестирования ПО. Осуществлен обзор существующих библиотек для обеспечения тестирования программ, написанных на различных языках программирования, таких как Java, С# и Groove. Выделены основные достоинства библиотеки тестирования NUnit, рассмотрена специфика библиотеки модульного тестирования JUnit.
Во второй главе приведены результаты проведенного обзора средств и технологий автоматизации процесса тестирования ПО. Описаны результаты проведенного анализа функциональных возможностей и достоинств Soap UI, Selenim, Ranorex и Rational Functional Tester, приведены примеры интерфейсов каждого из рассмотренных средств. Проведен анализ общих преимуществ и недостатков, характерных для концепции автоматизированного тестирования ПО.
...
1. Бейзер Б. Тестирование черного ящика. Технологии функционального тестирования программного обеспечения и систем. – СПб.: Издательский дом "ПИТЕР", 2014. – 426 с.
2. Бек К. Экстремальное программирование: разработка через тестирование. – СПб.:Питер, 2013. - 224 с.
3. Бернс Д. Selenium 2 средства тестирования: руководство для начинающих. – М.: Packt Publishing, 2012. - 285 с.
4. Блек Р. Ключевые процессы тестирования. – М.: Академия, 2013. - 544 c.
5. Веренинов И.А. Основы программирования. Учебное пособие. – СПб.: Издательство Политехнического университета, 2012. – 212 c.
6. Винниченко И.В. Автоматизация процессов. – СПб.: Питер, 2015. – 312 с.
7. Канер С. Тестирование программного обеспечения. – К.: ДиаСофт, 2014. — 612 с.
8. Коваленко Д. Selenium Design Patterns and Best Practices. – М.: PACKT Publishing, 2014. - 320 с.
9. Майерс Г. Искусство тестирования программ. – К.: Сандлєр, 2012. - 272 с.
10. Месарош Дж. Шаблоны тестирования xUnit. – СПб.: Вільямс, 2009. - 832 с.
и еще 10 источников.
Купить эту работу vs Заказать новую | ||
---|---|---|
0 раз | Куплено | Выполняется индивидуально |
Не менее 40%
Исполнитель, загружая работу в «Банк готовых работ» подтверждает, что
уровень оригинальности
работы составляет не менее 40%
|
Уникальность | Выполняется индивидуально |
Сразу в личном кабинете | Доступность | Срок 1—6 дней |
700 ₽ | Цена | от 500 ₽ |
Не подошла эта работа?
В нашей базе 149282 Курсовой работы — поможем найти подходящую