XML для тестировщиков (I - Introduction)
В последнее время, по долгу службы, мне довелось обучать и встраивать в проекты довольно большое количество начинающих тестировщиков. Ситуация на рынке труда складывается не самым лучшим образом и найти сложившегося специалиста, обладающего всем набором необходимых технических навыков не представляется возможным. Поэтому довольно часто приходится сталкиваться с такой проблемой как недостаточное знание сотрудником языка XML.
С одной стороны проблема сама по себе не является серьезной, т.к. изучить этот язык и основы работы с ним довольно просто. С другой есть ряд моментов, которые усложняют жизнь молодому поколению:
С одной стороны проблема сама по себе не является серьезной, т.к. изучить этот язык и основы работы с ним довольно просто. С другой есть ряд моментов, которые усложняют жизнь молодому поколению:
- При всем многообразии информации доступной в сети, большинство материалов написаны именно для разработчиков. Все теоретические и практические задачи рассматриваются с точки зрения разработки программного обеспечения, а не его тестирования. Поэтому, приходится рекомендовать ребятам кучу литературы и ресурсов для прочтения, а затем уже дополнительно пояснять весь материал, показывать на примерах.
- Начинающему тестировщику зачастую необходимо стихийно включаться в работу. Обычно времени на встраивание в проект отводится крайне мало и недостаточно для постепенного и планомерного изучения технологий. Справочного материала либо нет, либо он доступен только на английском языке (с чем так же есть свои сложности). В лучшем случае в проекте существует формализованная база знаний, которая помогает в процессе изучения основ (но реальность такова, что необходимость ведения такой базы принято с удовольствием обсуждать на тренингах, семинарах и за чашечкой кофе на диванчике, а вот заниматься ее созданием и поддержкой готовы лишь единицы).
Зачем нужно знать XML в тестировании?
Для ответа на этот вопрос необходимо четко определить цель использования документов XML в составе информационных систем - это передача данных между компонентами системы, а так же во внешние информационные системы.
При этом каналы и способы передачи данных могут быть различными. Например, могут использоваться веб службы и определенный протокол передачи, или передача данных может осуществляться посредством шины. Важно помнить, что способ передачи влияет только на обертку XML документа, а не на его суть. Разберем передачу XML на примере простого почтового отправления.
Допустим нам необходимо отправить какие-либо данные по почте. Для этого нам необходимо само письмо, конверт и почтовая марка. Передаваемые данные представляют собой текст письма. XML документ это само письмо (т.е. документ с формализованной информацией, записанной на определенном языке и по определенным правилам). Конверт и почтовую марку можно сравнить с оберткой протокола передачи, это некая упаковка и служебная информация, которая позволяет документу путешествовать по почтовым путям в целости и сохранности, и без труда определить конечного адресата.
Для того чтобы протестировать систему, которая общается с внешним миром посредством XML документов, вам необходимо подготовить различные варианты входных данных и проверить поведение системы при получении той или иной информации. Так же система при определенных внешних воздействиях может по некоторым правилам генерировать XML и отправлять их во внешнюю среду. В данном случае необходимо проверить правильность формирования исходящих файлов.
Как в случае подготовки наборов входных данных, так и в случае проверки сформированных файлов для проведения качественного тестирования необходимо знание языка XML.
Что необходимо иметь под рукой?
Тестировщику независимо от того, какое приложение он тестирует нужно иметь хороший и удобный текстовый редактор с подсветкой синтаксиса. А при работе с языками разметки, коим и является XML, необходимость возводится в квадрат.
В последнее время я пользуюсь двумя редакторами: Notepad++ и Adobe Brackets.
Notepad++ использую в офисе, в основном по привычке. В принципе этот редактор меня устраивает, он имеет довольно удобный интерфейс и отлично справляется со своей задачей. Скачать редактор можно на официальном сайте проекта - https://notepad-plus-plus.org.
Adobe Brackets использую дома, когда душа просит поработать в удовольствие. Редактор привлекает очень приятным дизайном пользовательского интерфейса, широким спектром возможностей. А так же в нем есть функция авто-дополнения. Скачать можно здесь - http://brackets.io.
Каким бы редактором вы не пользовались, просмотр подготовленных XML файлов и XSD схем должен быть удобным.
Для изучения так же полезно иметь под рукой хороший справочник по XML. Я рекомендую для этой цели использовать курсы w3scool - http://www.w3schools.com/xml/default.asp. Но подойдет и любой другой подобный ресурс, главное чтобы он был информативен и удобен в использовании.
Что дальше?
В следующих частях статьи:
- Основы XML;
- Способы описания интерфейсов при разработке информационных систем;
- Основы XSD;
- Подготовка тестовых данных на основе XSD;
- Подготовка тестовых данных на основе других видов спецификаций;
- Что нужно знать дизайнеру тестовых сценариев о XML и XSD;
- Автоматизация процесса подготовки тестовых данных;
- Тестирование с помощью SOAP UI.
Комментарии
Отправить комментарий