Научная статья на тему 'АНАЛИЗ ИНСТРУМЕНТОВ ДЛЯ ПРОВЕДЕНИЯ АВТОМАТИЗИРОВАННОГО ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ'

АНАЛИЗ ИНСТРУМЕНТОВ ДЛЯ ПРОВЕДЕНИЯ АВТОМАТИЗИРОВАННОГО ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
222
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / ТЕСТИРОВАНИЕ / ФУНКЦИОНАЛЬНОЕ ТЕСТИРОВАНИЕ / АВТОМАТИЗИРОВАННОЕ ТЕСТИРОВАНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Веденеев Г.С., Федосеев Д.А., Старовойт К.А.

Статья посвящена автоматизации функционального тестирования программного обеспечения. Описывается процесс, преимущества и недостатки автоматизации тестирования. Проводится анализ инструментов для автоматизации функционального тестирования программного обеспечения.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ANALYSIS OF INSTRUMENTS FOR AUTOMATED FUNCTIONAL TESTING OF THE SOFTWARE

The article is devoted to automation of functional software testing. The process, advantages and disadvantages of test automation are described. Analysis of tools for automation of functional software testing is given.

Текст научной работы на тему «АНАЛИЗ ИНСТРУМЕНТОВ ДЛЯ ПРОВЕДЕНИЯ АВТОМАТИЗИРОВАННОГО ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ»

УДК 004.415.53

Веденеев Г. С. студент магистратуры, 2 курс факультет «Информатика и системы управления»

Федосеев Д.А. студент бакалавриата, 3 курс факультет «Информатика и системы управления»

Старовойт К.А. студент магистратуры, 2 курс факультет «Информатика и системы управления» научный руководитель: Кузовлев В.И., к. техн. н.

доцент

МГТУ им. Н.Э. Баумана Россия, г. Москва АНАЛИЗ ИНСТРУМЕНТОВ ДЛЯ ПРОВЕДЕНИЯ АВТОМАТИЗИРОВАННОГО ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Статья посвящена автоматизации функционального тестирования программного обеспечения. Описывается процесс, преимущества и недостатки автоматизации тестирования. Проводится анализ инструментов для автоматизации функционального тестирования программного обеспечения.

Ключевые слова: программное обеспечение, тестирование, функциональное тестирование, автоматизированное тестирование.

Vedeneev G.S. student, master program, 2 course faculty «Informatics and control systems»

Bauman university Russia, Moscow Fedoseev D.A. student, bachelor program, 3 course faculty «Informatics and control systems»

Bauman university Russia, Moscow Starovoyt K.A. student, master program, 2 course faculty «Informatics and control systems»

Bauman university Russia, Moscow Scientific adviser: Kuzovlev V.I. candidate of engineering sciences, docent

Bauman university Russia, Moscow

ANALYSIS OF INSTRUMENTS FOR AUTOMATED FUNCTIONAL TESTING OF THE SOFTWARE

The article is devoted to automation of functional software testing. The process, advantages and disadvantages of test automation are described. Analysis of tools for automation offunctional software testing is given.

Keywords: software, testing, functional testing, automated testing.

Введение

Программное обеспечение (ПО) - совокупность программ системы обработки информации и программных документов, необходимых для их эксплуатации. Однако, как правило, после разработки программной системы, в ней может оставаться некоторое число скрытых ошибок. Проявление этих ошибок в процессе эксплуатации программы может привести к сбою или отказу. Основным мероприятием для обнаружения ошибок, имеющихся в программе, является процесс тестирования. В данной работе рассмотрено понятие тестирование ПО, приведены уровни тестирования программного обеспечения. Также описан такой вид тестирования, как функциональное тестирование. Перечислены преимущества и недостатки автоматизированного тестирования, а также проведен анализ основных инструментов для проведения автоматизированного функционального тестирования ПО.

Тестирование ПО

Тестирование программного обеспечения — процесс исследования, испытания программного продукта, имеющий две различные цели:

• продемонстрировать разработчикам и заказчикам, что программа соответствует требованиям;

• выявить ситуации, в которых поведение программы является неправильным, нежелательным или не соответствующим спецификации.

Тестирование программного обеспечения является важной и неотъемлемой частью создания программного продукта. От того, насколько досконально проведены тесты, зависит то, как скоро проект будет сдан окончательно, и будет ли необходимость впоследствии устранять ошибки. При отсутствии качественно проведенного тестирования, продукт будет выпущен в стадию эксплуатации с некоторым числом скрытых ошибок, которые не удалось обнаружить и исправить в процессе отладки. Это может грозить существенными штрафами со стороны заказчика в случае разработки ПО на заказ. Либо ухудшение репутации компании, уменьшение количества пользователей, и как следствие, уменьшение прибыли, из-за выпуска недостаточно надежного, а значит недостаточно качественного продукта. На рисунке 1 представлены графики, демонстрирующие процент ошибок в программе на стадиях кодирования, тестирования и эксплуатации, процент обнаруженных ошибок на данных этапах, а также стоимость устранения ошибки на конкретном этапе. Как видно из рисунка на стадии эксплуатации содержится меньше ошибок, меньше ошибок обнаруживается, однако стоимость устранения ошибки на данной стадии гораздо выше, чем

на стадиях кодирования и тестирования. Поэтому так важно на стадии тестирования найти как можно больше возможных ошибок, скрытых в программе.

Рис. 1. Стоимость устранения ошибок на разных стадиях ЖЦ ПО.

Уровни тестирования

Тестирование на разных уровнях производится на протяжении всего жизненного цикла разработки и сопровождения программного обеспечения. Уровень тестирования определяет то, над чем производятся тесты: над отдельным модулем, группой модулей или системой, в целом. Проведение тестирования на всех уровнях системы - это залог успешной реализации и сдачи проекта.

1. Компонентное или модульное тестирование - тестируется минимально возможный компонент, например, класс или функция. Один из наиболее эффективных подходов к компонентному тестированию -это подготовка автоматизированных тестов до начала основной разработки программного обеспечения. Этот подход называется разработка от тестирования. При этом подходе создаются и интегрируются небольшие куски кода, напротив которых запускаются тесты, написанные до начала кодирования. Разработка ведется до тех пор, пока все тесты не будут успешно пройдены.

2. Интеграционное тестирование - тестируются интерфейсы между компонентами, подсистемами и системами. При наличии резерва времени на данной стадии тестирование ведется итерационно, с постепенным подключением последующих систем.

Есть 3 основных подхода к интеграционному тестированию:

• Снизу вверх (Bottom Up Integration)

Все низкоуровневые модули, процедуры или функции собираются

/

Кодирование Моду/юное Функциональное Системное Эксплуатация тестирование тестирование тестирование

воедино и затем тестируются. После чего собирается следующий уровень модулей для проведения интеграционного тестирования. Данный подход считается полезным, если все или практически все модули, разрабатываемого уровня, готовы.

• Сверху вниз (Top Down Integration)

Вначале тестируются все высокоуровневые модули, и постепенно один за другим добавляются низкоуровневые. Все модули более низкого уровня симулируются заглушками с аналогичной функциональностью, затем по мере готовности они заменяются реальными активными компонентами. Таким образом мы проводим тестирование сверху вниз.

• Большой взрыв ("Big Bang" Integration)

Все или практически все разработанные модули собираются вместе в виде законченной системы или ее основной части, и затем проводится интеграционное тестирование.

3. Системное тестирование - тестируется интегрированная система на ее соответствие требованиям.

Альфа-тестирование - имитация реальной работы с системой, либо реальная работа с системой потенциальными заказчиками/пользователями. Обнаруженные ошибки могут быть переданы тестировщикам для дополнительного исследования в окружении, подобном тому, в котором будет использоваться программа.

Бета - тестирование - в некоторых случаях выполняется распространение предварительной версии для некоторой большой группы лиц с тем, чтобы убедиться, что продукт содержит достаточно мало ошибок. Иногда бета-тестирование выполняется для того, чтобы получить обратную связь о продукте от его будущих пользователей.

Функциональное тестирование

Один из самых важных для итоговой надежности системы вид тестирования - это функциональное тестирование.

Функциональное тестирование рассматривает заранее указанное поведение и основывается на анализе спецификаций функциональности компонента или системы в целом.

Функциональные тесты основываются на функциях, выполняемых системой, и могут проводиться на всех уровнях тестирования. Как правило, эти функции описываются в требованиях, функциональных спецификациях или в виде случаев использования системы (use cases).

Тестирование функциональности может проводиться в двух аспектах:

• требования

• бизнес-процессы

Тестирование в перспективе «требования» использует спецификацию функциональных требований к системе как основу для дизайна тестовых случаев (Test Cases). В этом случае необходимо составить список того, что будет тестироваться, а что нет, расставить приоритет требований на основе

рисков (если это не сделано в документе с требованиями), а на основе этого расставить приоритет тестовых сценариев (test cases). Это позволит сфокусироваться и не упустить при тестировании наиболее важный функционал.

Тестирование в перспективе «бизнес-процессы» использует знание самых бизнес-процессов, которые описывают сценарии ежедневного использования системы. В этой перспективе тестовые сценарии (test scripts), как правило, основываются на случаях использования системы (use cases).

Основным плюсом функционального тестирования является то, что оно имитирует фактическое использование системы.

Вместе с тем недостатками функционального тестирования являются возможность упущения логических ошибок в программном обеспечении, а также вероятность избыточного тестирования.

На практике, при разработке сложных программных комплексов достаточно распространенной практикой является автоматизация функционального тестирования.

Автоматизированное функциональное тестирование

Автоматизированное тестирование ПО - это процесс верификации программного обеспечения, при котором основные функции и шаги теста, такие как запуск, инициализация, выполнение, анализ и выдача результата, выполняются автоматически при помощи инструментов для автоматизированного тестирования.

Автоматизированное функциональное тестирование ПО - это процесс верификации функциональных требований и особенностей тестируемого приложения, посредством инструментов для автоматизированного тестирования.

Решение о целесообразности проведения автоматизации тестирования, а также для каких именно объектов системы применять автоматизацию, нужно принимать на основе конкретной функциональности вашей системы. Это зависит от многих факторов, таких как используемые технологии, квалификация и состав проектной команды, качество и полнота составленной технической спецификации, бюджет проекта, организация поддержки и сопровождения системы и др. На основе этих факторов необходимо решить, оправдывают ли преимущества стратегии автоматизации функционального тестирования имеющиеся недостатки в рамках условий конкретной системы.

Преимущества автоматизации тестирования:

• Повторяемость - все написанные тесты всегда будут выполняться однообразно, то есть исключен «человеческий фактор».

• Быстрое выполнение - автоматизированному скрипту не нужно сверяться с инструкциями и документациями, это сильно экономит время выполнения.

• Меньшие затраты на поддержку - когда автоматические скрипты уже написаны, на их поддержку и анализ результатов требуется, как

правило, меньшее время чем на проведение того же объема тестирования вручную.

• Отчеты - автоматически рассылаемые и сохраняемые отчеты о результатах тестирования.

• Выполнение без вмешательства - тесты могут выполняться без участия инженера-тестировщика, или тесты могут выполняться в нерабочее время.

Недостатки автоматизации тестирования:

• Повторяемость - все написанные тесты всегда будут выполняться однообразно. Это одновременно является и недостатком, так как тестировщик, выполняя тест вручную, может обратить внимание на некоторые детали и, проведя несколько дополнительных операций, найти дефект.

• Большие затраты на разработку - разработка автоматизированных тестов — это сложный процесс, так как фактически идет разработка приложения, которое тестирует другое приложение. В сложных автоматизированных тестах также есть фреймворки, утилиты и библиотеки, соответственно это требует времени.

• Стоимость инструмента для автоматизации - в случае если используется лицензионное ПО, его стоимость может быть достаточно высока. Open Source инструменты как правило отличаются более скромным функционалом и меньшим удобством работы.

• Пропуск мелких ошибок - автоматический скрипт может пропускать мелкие ошибки, на проверку которых он не запрограммирован. Это могут быть неточности в позиционировании окон, ошибки в надписях, которые не проверяются, ошибки контролов и форм с которыми не осуществляется взаимодействие во время выполнения скрипта.

Анализ инструментов автоматизированного тестирования

На данный момент существует множество различных инструментов для автоматизации тестирования. Они могут представлять собой как подключаемые библиотеки или фреймворки, так и самостоятельные программные продукты. Инструменты автоматизированного тестирования различаются используемыми технологиями, различным набором функциональности, различными платформами, к которым могут применены, а также могут иметь различные целевые задачи. В таблице представлены ведущие инструменты автоматизации тестирования и их компании -производители.

Компания Hewlett-Packard Инструмент HPE Unified Functional Testing

IBM Rational Functional Tester

Micro Focus SilkTest

SmartBear TestComplete

Таблица 1. Инструменты для автоматизированного тестирования

HPE Unified Functional Testing

HPE Unified Functional Testing (HPE UFT) — один из ведущих инструментов автоматизации функционального и регрессионного тестирования для программных приложений и сред. Является флагманским продуктом компании HP в своей линейке. UFT поддерживает интерфейсы ключевых слов и сценариев и имеет графический пользовательский интерфейс.

Unified Functional Testing выполняет функциональное и регрессионное тестирование через пользовательский интерфейс, такой как собственный GUI или веб - интерфейс. Он работает путем идентификации объектов в пользовательском интерфейсе приложения или веб - страницы и выполнения необходимых операции (например, щелчков мыши или события клавиатуры). Он использует Visual Basic Scripting Edition (VBScript ) язык сценариев для определения процедуры испытаний, и манипулирования объектами и элементами управления тестируемого приложения.

Хотя Unified Functional Testing обычно используется для автоматизации тестовых случаев на основе пользовательского интерфейса, он также может автоматизировать некоторые не основанные на пользовательском интерфейсе случаи, такие как операции файловой системы, тестирование баз данных или тестирование веб - сервисов.

Обработка исключений

HPE Unified Functional Testing управляет обработкой исключений с использованием сценариев восстановления. Цель состоит в том, чтобы продолжить работу тестов, если происходит непредвиденная ошибка. Поскольку HPE Unified Functional Testing захватывает пространство памяти тестируемого приложения, некоторые исключения могут привести к тому HPE Unified Functional Testing прекратит выполнение и будет невозвратным к исходной точке выполнения.

Тесты, управляемые данными

HPE Unified Functional Testing поддерживает тестирование управляемое данными. Данные могут содержаться в таблице, обычно в Excel, файле CSV или базе данных. Таким образом одни и те же данные могут быть использованы в разных местах приложения несколько раз. HPE Unified Functional Testing поддерживает два типа таблиц данных: глобальный лист данных и лист данных действия (локальный). На этапах тестирования данные могут считываться из этих таблиц данных для того, чтобы управлять различными данными в рамках тестирования и проверки ожидаемого результата.

Расширяемость

HPE Unified Functional Testing может быть расширена с помощью отдельных надстроек для ряда сред разработки, которые не поддерживаются в стандартном наборе приложения. HPE Unified Functional Testing надстройки включают поддержку Web, .NET, Java и Delphi. HP QuickTest

Professional его надстройки упакованы вместе в программном обеспечении HP Functional Testing.

Rational Functional Tester

IBM Rational Functional Tester - это объектно-ориентированный автоматизированный инструмент функционального тестирования, позволяющий тестировать приложения HTML, Java, Windows, .NET, Visual Basic, Silverlight, Eclipse, SAP, Siebel, Flex, Ajax, Dojo, GEF и PowerBuilder. Rational Functional Tester позволяет записывать надежные сценарии, которые можно воспроизводить для проверки новых компоновок тестовых приложений. IBM Rational Functional Tester может работать в операционных системах Windows и Linux. Интеграция Rational Functional Tester с Eclipse использует язык Java, а интеграция Rational Functional Tester с Microsoft Visual Studio .NET использует язык VB.NET и среду разработки Microsoft Visual Studio .NET.

Объектно-ориентированная технология записи IBM Rational Functional Tester позволяет создавать автоматизированные сценарии функционального тестирования путем записи действий в тестируемом приложении. Rational Functional Tester использует объектно-ориентированную технологию для поиска управляющих элементов и объектов по их внутренним свойствам, а не координатам на экране. В случае изменения расположения или текста управляющего элемента или объекта Rational Functional Tester сможет найти его в ходе воспроизведения.

Технология тестирования объектов Rational Functional Tester охватывает любые управляющие элементы и объекты тестируемого приложения, включая свойства и данные управляющих элементов.

В ходе работы с интеграцией Rational Functional Tester с Eclipse или интеграцией Rational Functional Tester с Microsoft Visual Studio .NET применяются карты тестовых объектов, а визуальные элементы приложения недоступны. При записи функционального тестового сценария Rational Functional Tester автоматически создает карту тестовых объектов для тестируемого приложения. Карта тестовых объектов Functional Tester содержит показанные и скрытые тестовые объекты из приложения. Карта объектов - это удобный способ добавления объектов в функциональный тестовый сценарий. Поскольку в карте тестовых объектов есть свойства распознавания каждого объекта, информацию о распознавании можно легко обновлять в одном, центральном расположении. Все сценарии функционального тестирования, связанные с этой картой тестовых объектов, станут использовать обновленную информацию.

В ходе записи в сценарий можно вставить точки проверки, определяющие состояние управляющего элемента или объекта в компоновках тестируемого приложения. Точка проверки позволяет собрать информацию об объекте (в зависимости от типа точки проверки) и сохранить ее в файле данных контрольной версии. Информация из этого файла становится контрольной версией ожидаемого состояния объекта в ходе

последующих компоновок. Functional Tester содержит точку проверки свойств объектов и пять точек проверки данных (иерархия меню, таблица, текст, иерархия дерева и список). Функция сравнения точки проверки позволяет проанализировать различия компоновок и обновить файл контрольной версии.

Rational Functional Tester обеспечивает независимое от платформы и браузера воспроизведение тестов. Например, можно записать сценарий функционального тестирования в системе Windows и воспроизвести его в системе Linux. Функциональный тестовый сценарий можно записать с помощью Firefox или Internet Explorer. Поскольку сценарий функционального тестирования не содержит ссылки на браузер, применяемый в ходе записи, сценарий функционального тестирования можно воспроизвести с помощью любого поддерживаемого браузера Firefox или Internet Explorer.

Комплект для разработки приложений (SDK) для посредника Rational Functional Tester позволяет расширить стандартные возможности автоматического функционального тестирования управляющих элементов пользовательского интерфейса (тестовых объектов GUI), доступные в Functional Tester.

SilkTest

Borland Silk Test является одним из самых надежных, эффективных и быстрых решений в области автоматизированного функционального и регрессионного тестирования приложений. Используя Silk Test, пользователи могут создавать тесты без навыков написания кода. Тестировщики оказываются на одном уровне с разработчиками, а разработчики могут создавать тесты в любой среде. Широкие возможности автоматизации делают Silk Test совершенным решением функционального, регрессионного, кросс-платформенного и локализованного тестирования (включая комплексные тест-кейсы и краткосрочные циклы тестирования). Silk Test применим в большом количестве сред, включая Ajax, Web2.0, Java, .NET, клиент-серверные приложения, терминальные приложения, SAP, Oracle. Silk Test предоставляет возможности для повышения эффективности, включая простое управление изменениями в тестируемом приложении, а также поддержку фреймворков, что упрощает повторное использование тестов в проектах. Таким образом, группа тестировщиков может тратить меньше времени на создание и поддержку скриптов и уделять больше внимания расширению покрытия использования тестов и оптимизации качества.

Общие сведения о функционале:

• Поддержка передовых технологии, таких как AJAX/Flex/Web 2.0, Java, .NET, клиент/сервер и базисные системы.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• Расширенная поддержка контроля клиента.

• Кросс-браузерная поддержка без модификации скрипта.

• Поддержка тестирования базисных систем с помощью компонента Rumba.

• Быстрый доступ к опциям клиента через стартовую страницу.

• Высокая производительность благодаря визуальному тестированию и созданию сценариев тестов.

• Встроенный язык для написания скрипта в среде VB.NET для расширенных сценариев тест-кейсов.

• Плагин Silk4J Eclipse для JAVA разработчиков.

• Плагин Silk4Net Microsoft Visual Stidio для .NET разработчиков.

• Модуль Active Data для тестирования логической функциональности бизнес-приложений с использованием информации, хранящейся на внешних носителях.

• Мощные возможности редактирования для быстрой кастомизации теста и разработки автоматизированного интерфейса.

• Структурирование и передача информации о тесте через рабочие

зоны.

• Проведение отладки и диагностики скрипта с точки зрения конечного пользователя.

• Поддержка удаленного тестирования при участии большого количества машин.

• Взаимодействие с Borland SilkCentral Test Manager позволяет более эффективно управлять тестированием с ориентацией на процесс, а также отслеживать задачи.

• Технология Open Agent с полностью автоматической синхронизацией событий.

• Dynamic Resolving позволяет объекту располагаться независимо от иерархии окон.

Совместное развитие автоматизации тестирования.

Silk Test предоставляет несколько интерфейсов: визуальный, на основе создания скрипта или IDE - для бизнес-аналитиков, специалистов по предметной области, команд QA, инженеров по автоматизации и разработчиков, сотрудничающих в процессе тестирования.

Silk Test WorkBench обеспечивает визуальный вариант создания теста, предлагая мощный и интуитивно понятный, не требующий написания кода, подход.

SilkTestКроме того, интерактивные скриншоты, позволяют визуально редактировать шаги теста, область раскадровки; показывают последовательность отдельных этапов теста в контексте записанного процесса. Помимо этого, визуальные тесты могут быть объединены и расширены с помощью скриптов VB.NET.

Полная поддержка Web 2.0

Silk Test поддерживает все основные Web 2.0 среды, такие как Adobe's Flex, Microsoft Silverlight и HTML / AJAX. Это облегчает тестирование

современных WEB-приложений, поддерживая режимы синхронизации для HTML и AJAX. В HTML-режиме можно протестировать простые вебстраницы. Для более сложных сценариев с Java-скриптами используется режим AJAX, который избавляет от необходимости писать вручную код функций синхронизации.

Тестирование кросс-браузерных веб-приложений

С Silk Test вы можете, создав один тестовый сценарий, использовать его в различных браузерах: Internet Explorer, Firefox и Chrome. Это избавляет от необходимости создавать отдельную логику тестирования для обработки поведения теста в различных браузерах. Логические тест-кейсы остаются сфокусированными в одном сценарии использования, и время разработки тестов может быть сокращено до 80%, а тестовые сценарии становятся более гибкими в изменении.

Надежная и прочная автоматизации тестирования

SilkTest быстро автоматизирует сложные бизнес-процессы и включает в себя современные, высокодинамичные возможности для пользователей. Silk Test позволяет реагировать тогда, когда система не вовремя проходит тестирование и предоставляет уникальные возможности для выполнения тестов в автоматическом непрерывном режиме. При возникновении ошибки в ходе исполнения теста, Silk Test записывает отчет в журнал, после чего приложение восстанавливается в первоначальное состояние. Последующие тесты могут продолжать работать и производить достоверные результаты теста.

Расширенная отчетность в Silk Central

Интеграция с Silk Central позволяет Silk Test воспользоваться расширенными функциями управления тестированием и возможностью отслеживания вопросов, включая всеобъемлющее использование отчетности. Тесты, созданные в Silk Test, могут быть связаны с требованиями, запланированными к исполнению, и одновременно выполняться в различных средах с различными конфигурациями.

TestComplete

TestComplete - это автоматизированное средство тестирования, позволяющее создавать тесты для Windows приложений, веб-серверов и вебстраниц. TestComplete используется для автоматизации различных типов тестирования программного обеспечения для .NET, Java, Visual C++, Visual Basic, Delphi, C++Builder, веб-страниц и других приложений. Инструмент предназначен для разработчиков программного обеспечения и отделов тестирования для того, чтобы уменьшить временные затраты, необходимые на ручное тестирование.

TestComplete поддерживает различные типы и методы тестирования: модульное тестирование, функциональное тестирование, тестирование графического пользовательского интерфейса, регрессионное тестирование, распределенное тестирование.

Объекты и элементы

TestComplete работает с тестовыми проектами и группами проектов. Проект - это отправная точка в создании тестов. Проект содержит ваши тесты, базовые значения для контрольных точек, информацию о тестируемых вами приложениях и другие данные, необходимые для проведения тестирования. Проект также определяет порядок выполнения нескольких тестов и содержит все результаты выполнения тестов, полученные за время жизни проекта.

Один проект может содержать полный набор данных и тестов для вашего приложения. Для сложных приложений можно отвести отдельный проект под одну часть приложения, а остальные проекты под другие части приложения (обычно, модули).

Элементы проекта - это элементы, осуществляющие различные тестовые операции или используемые при выполнении данных операций.

Пользовательский интерфейс

Пользовательский интерфейс TestComplete представляет собой набор панелей. Панель Project Explorer отображает содержимое текущей группы проектов. Панель также содержит ссылки на результаты выполнения тестов данной группы.

Панель Workspace представляет собой рабочую область в TestComplete: она отображает редакторы проектов и элементов проекта, в которых вы создаете и модифицируете тесты, а также просматриваете результаты их выполнения. Ниже редактора, располагается панель Test Visualizer. Эта панель содержит изображения тестируемого приложения, полученные во время записи действий над ним. Представленные изображения помогут вам легко разобраться в том, какие именно действия выполняет каждая тестовая команда.

Панель Object Browser реализует одну важную функциональность TestComplete, общую для всех проектов: она отображает список всех процессов и окон, запущенных на используемом компьютере в данный момент. Для каждого процесса и окна данная панель отображает методы и свойства, к которым можно получить доступ с помощью TestComplete. Иными словами, панель Object Browser показывает методы и свойства, которые можно использовать при тестировании, а также дает информацию о том, как получить доступ к этим методам и свойствам.

Заключение

В данной работе было рассмотрено понятие ПО, приведены уровни тестирования программного обеспечения. Рассмотрен такой вид тестирования, как функциональное тестирование. Также описан процесс автоматизации функционального тестирования, приведены преимущества и недостатки этого подхода. Кроме этого был проведен анализ наиболее популярных инструментов для автоматизации тестирования программного обеспечения. В рамках анализа была рассмотрена основная функциональность выбранных инструментов, перечислены характерные особенности работы, используемые технологии и указаны платформы, на

которых данные инструменты могут быть применены.

Использованные источники:

1. Майерс Г., Баджетт Т., Сандлер К. «Искусство тестирования программ», 3-е издание, 2012

2. Бейзер Б. «Тестирование черного ящика. Технологии функционального тестирования программного обеспечения и систем», 2004

3. Дастин Э., Рэшка Д., Пол Д. «Автоматизированное тестирование программного обеспечения», 2003

4. Гарг Н. «Test Automation Using Hp Unified Functional Testing», 2014

5. Статья «Программное обеспечение автоматического функционального тестирования и регрессионного тестирования», сайт IBM. Режим доступа:http://www-03.ibm.com/software/products/ru/functional (дата обращения: 17.05.17)

6. Описание «TestComplete», сайт SmartBear. Режим доступа: https://smartbear.com/product/testcomplete/overview/ (дата обращения : 18.05.17)

УДК 378.1

Вокуева А. С. студент 4 курса

факультет «Государственное и муниципальное управление»

Московский Государственный Психолого-Педагогический Университет научный руководитель: Николаева А.А. , к. социол. н.

доцент

кафедра «Теория и практика управления»

Россия, г. Москва ИННОВАЦИОННОЕ УПРАВЛЕНИЕ ОБРАЗОВАТЕЛЬНЫМ ПРОЦЕССОМ В УЧРЕЖДЕНИИ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

Vokueva A. S. Student

4 course, faculty "State and municipal management" Moscow State Psychological-Pedagogical University

Russia, Moscow Supervisor: Nikolaev A. A. candidate of sociological Sciences, associate Professor of "Theory and

practice of management" INNOVATIVE MANAGEMENT OF EDUCATIONAL PROCESS IN INSTITUTIONS OF HIGHER PROFESSIONAL EDUCATION В статье рассматриваются этапы инновационного управления в образовании, раскрывается их потенциал в современных условиях развития образования, характеризуется модернизация функций, форм, методов,

i Надоели баннеры? Вы всегда можете отключить рекламу.