Uploaded by Barno Niyazova

Доступные инструменты и методы для тестирования веб

advertisement
Ниязова Барнонисо Наимджоновна
РГУ им. Косыгина, аспирант 1 курса
Доступные инструменты и методы для тестирования веб-приложений
Ранние исследования по тестированию веб-приложений выявили
различия
и
тестированием
сходства
между
программного
веб-тестированием
обеспечения.
и
Процессы
традиционным
тестирования,
определенные для традиционное программное обеспечение было изменено
для применения при тестировании веб-приложений. Ян и другие [1,2]
предложил архитектуру веб-тестирования, которая смоделирована на
традиционные архитектуры тестирования, но адаптированные к уникальным
характеристикам веб-приложений катионы. Например, в традиционную
архитектуру был добавлен новый процесс для решения смешанный характер
программирования веб-приложений; одна и та же страница может содержать
несколько языки программирования (например, HTML, JavaScript, VBScript).
Более того, все остальные тесты, внутренние спецификации процессов были
адаптированы к Интернету. При анализе сбоя, например, Ян и др.
предположил, что выходной URL-адрес, форма поля и графические вывод
необходимо проверить.
Исследования по тестированию веб-приложений в начале 2000-х годов
были
сосредоточены
на
применении
модели-
основанные
методы
тестирования веб-приложений. Это было вызвано введением динамических
веб-приложений в конце 90-х годов и плодотворная работа над моделями на
основе тестирования веб-приложений Ricca и Tonella [3, 4, 5]. Во многих из
этих подходов строится модель приложения, которая затем используется для
генерации- создайте тестовые последовательности, которые реализуют модель
и обеспечивают заданное тестером покрытие критерий.
Исследования также были сосредоточены на продвижении современных
веб-сканеров [6]. В 2008 году Эльбаумом и др. [7] предложено использовать
данные сеанса сохраняются в журналах веб-сервера для создания более
реалистичных наборов тестов и повторно отразите фактическое поведение
пользователя. Этот подход впоследствии был разработан другими поисковик.
В то же время, исследования развивают подход, который фокусировался на
определенных характеристиках, специфичных для веб-приложений, таких как
как взаимодействия с браузером или способность пользователя обходить
интерфейс. Он представил метод обнаружения неисправностей в приложениях
PHP путем статической аппроксимации выходных данных. В 2006 году
внимание используется для идентификации интерфейсов (фактические поля
ввода и их ожидаемые значения или диапазоны), которые использует вебприложение. Это привело к последующей работе это было сосредоточено на
создании тестовых данных, которые удовлетворяли некоторым критериям
адекватности тестов белого ящика. На рисунке 1 показана временной шкале
развития веб – тестирования.
Рисунок 1. Временная шкала развития веб-тестирования
Ди Лукка и Фасолино рассмотрели и обобщили современное состояние
в тестировании веб-приложений и предлагаемых будущих тенденциях. Они
пришли к выводу, что для применения традиционные методы тестирования
для веб-приложений, значительные усилия по адаптации этих методы для вебприложений необходимы, когда процесс тестирования зависит от реализации.
Это связано со специфическими характеристиками и динамической природой
веб-приложения.
В оставшейся части этой статьи кратко рассматриваются доступные
инструменты
тестирования,
которые
используется
рассматривает основные подходы к веб-тестированию.
на
практике
и
В связи с важностью высокой доступности, масштабируемости и
безопасности для веб-приложений, акцент на нефункциональных методах
тестирования чрезвычайно высок. Инструменты, которые выполняют
тестирование
нагрузки
и
обеспечения
соответствия
безопасности
регулярно
веб-приложения
эти
используется
для
требования.
Для
функционального тестирования доступные инструменты варьируются от
валидаторов
HTML
и
связывайте
шашки
с
инструментами
захвата/воспроизведения и фреймворками тестирования, которые помогают
тестировщику в написание сценариев тестирования для выполнения
модульного тестирования. Значительное количество ручных усилий попрежнему требуется при использовании этих инструментов.
1. Гусеничные машины
Веб-обходчики можно рассматривать как инструменты тестирования
при просмотре отчетов веб-приложений сбои и неработающие ссылки. Многие
сканеры с открытым исходным кодом и коммерческие сканеры существуют с
различными степенями функциональности. WebSPHINX это настраиваемый
spi для конкретного сайта с графическим интерфейсом. Он также
предоставляет библиотеку классов, которую можно использовать для
реализации настраиваемые пауки на Java. Mercator имеет функции,
аналогичные функциям WebSPHINX но предназначен для решения проблем
масштабируемости. JSpider является еще одним открытым исходным кодом
искатель, который имеет преимущество записи структуры веб-приложения в
базу данных.
Однако
все
три
сканера
не
обеспечивают
поддержку
автоматизированных форма заполнение и под-миссией. Телепорт Pro это
коммерческий гусеничный движок, который предоставляет несколько
дополнительных
функций:
Искатель
предоставляет
пользователю
возможность предоставлять информацию для аутентификации для доступа
части приложения, защищенные паролем. Он также анализирует JavaScript для
извлечения ссылок. Жирарди и др. провел сравнение этих и других сканеров
на основе полнота, надежность, предлагаемые функции и возможности
ограничения загрузки. Он пришел к выводу, что рассматриваемые сканеры
имеют разные сильные и слабые стороны, но указано, что некоторые
коммерческие сканеры обеспечивают большую полноту. Хотя ползуны имеют
то преимущество, что они полностью автоматизированы, их способность
охватывать приложение является тесно связаны с их возможностями.
2. Валидаторы HTML и Средства проверки ссылок
Проверка
ссылок
и
валидаторов
—
HTML
это
класс
автоматизированных инструментов, которые похожи к краулерам. Проверка
ссылок просмотрите все ссылки на веб-сайте или странице, чтобы проверить
наличие любые неработающие ссылки. Они работают примерно так же, как
поисковая система. Некоторые из этих инструментов есть дополнительная
возможность
проверки
изображений
и
ссылок,
содержащихся
в
JavaScript. Валидаторы HTML проверяют HTML-код страницы или веб-сайта
на наличие ошибок совпадающие теги и другие нарушения стандартов
HTML. Многие браузеры способны отобразите страницу правильно, даже
если стандарты HTML не соблюдены. Тем не менее, это не всегда это так, и
лучше всего убедиться, что HTML сформирован правильно.
Одним из ограничений валидаторов HTML является то, что они могут
проверять
только
статический
HTML
страницы. Доступно
несколько
инструментов для проверки ссылок или проверки HTML как в режиме онлайн,
так и в качестве загружаемые исполняемые файлы. Консорциум всемирной
паутины (W3C) предлагает оба типа инструментов на их веб-странице.
3. Инструменты захвата/Воспроизведения
Автоматизированное функциональное тестирование веб - приложений в
основном основано на захвате/воспроизведении. Существующие инструменты
захвата/ответа, такие как LogiTest и Maxq pro- смотрит как тестер с
интерфейсом, похожим на браузер. Затем тестировщик перемещается по вебприложение записывает различные сценарии тестирования, которые затем
повторяются во время повторного тестирования на сжатие. Тем не менее,
качество производимого набора тестов зависит от качества тестировщика,
тщательность и мастерство и требует значительных ручных усилий. Кроме
того, изменения в структуре веб-приложения может привести к сбою в запуске
записанного набора тестов. Это делает необходимым повторную запись всех
или части тестов. Селен является популярным открытым инструмент
захвата/ответа источника, который также предоставляет возможность
изменять тестовые сценарии.
4. Рамки Тестирования
Для создания модульных тестов для веб-приложений доступно
несколько платформ тестирования. HttpUnit — это Java API, который
предоставляет строительные блоки, необходимые для эмуляции поведение
браузера. В сочетании с фреймворком, таким как JUnit, HttpUnit позволяет
тестировщикам создавать тестовые случаи для проверки поведения вебприложений. SimpleTest — это аналогичная платформа для PHP, которая
дополнительно предоставляет возможность для создания макетных объектов,
имитирующих трудоемкие операции, такие как управление базой данных.
PHPUnit является частью семейства платформ тестирования xUnit. Он
обеспечивает широкие функциональные возможности для создания и запуска
модульных тестов с использованием таких инструментов, как JMock для
создания макетных объектов и Xdebug для анализа покрытия. Рамки
тестирования окажите помощь тестировщику в создании модульных тестов;
однако проектирование и создание тестов выполняется вручную и требует
времени
и
ресурсов,
которые
могут
оказаться
недоступными
или
экономически эффективными.
Инструменты тестирования веб-приложений повышают надежность,
сокращают сроки выполнения работ и увеличивают рентабельность
инвестиций.
Это различные типы инструментов, которые помогают в различных
видах веб-тестирования, начиная от сбора требований и заканчивая
управлением тестированием. Ниже приводится список лучших инструментов
для тестирования веб-сайтов с ключевыми функциями и ссылками для
загрузки.
Список литературы
1.
Цзи-Цай Ян, Цзюнь-Лун Хуан, Фэн-Цзянь Ван, Уильям и Ч. Чу.
Построение объектно-ориентированной архитектуры для тестирования вебприложений. Журнал информационных наук и техники, январь 2016.
2.
Цзи-Цай Ян, Цзюнь-Лун Хуан, Фэн-Цзянь Ван и Уильям К. Чу.
Объектно-ориентированная архитектура, поддерживающая тестирование вебприложений. Материалы
23-й
Международной
конференции
по
компьютерному программному обеспечению и приложениям, Конференция
по катионам (COMPSAC ’99), страницы 122-127. Компьютер IEEE Общество,
2014.
3.
Филиппо Рикка и Паоло Тонелла. Анализ веб-сайта: Структура и
эволюция. В материалах 16-й Международной конференции по программному
обеспечению
техническое
обслуживание
(ICSM
’00),
страницы
76-
87. Компьютерное общество IEEE, 2017
4.
Филиппо Рикка и Паоло Тонелла. Анализ и тестирование веб-
приложений. В
материалах
23-й
Международной
конференции
по
программному обеспечению и инжиниринг (ICSE ’01), страницы 2534. Компьютерное общество IEEE, 2010
5.
Филиппо Рикка и Паоло Тонелла. Процессы тестирования веб-
приложений. Анналы разработки программного обеспечения, 14:93-114,
декабрь 2009 года.
6.
Майкл Бенедикт, Джулиана Фрейре и Патрис Годфруа. Veriweb: В
материалах 11-й Международной конференции по Всемирной паутине (WWW
’02), Гонолулу, США, 2009.
7.
Себастьян Эльбаум, Срикант Карре и Грегг Ротермел. В ходе
разбирательств
25-я
Международной
конференции
по
разработке
программного обеспечения (ICSE ’03), страницы 49-59. Компьютерное
общество IEEE, 2008.
Download