ServiceNow ATF: роль в тестовых процессах и ускорении цифровых преобразований

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

Всем привет, приходилось иметь дело с каким-либо продуктом, в котором упоминалось слово «автоматизация»? Сейчас всё чаще нам приходится встречаться с автоматизацией множества процессов внутри компаний разного калибра, как крупных, так и не очень. И хотелось бы рассказать об одном из таких средств автоматизации тестирования, как Automated Test Framework, или же просто ATF, широко применяемом в рамках ServiceNow.

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

Насколько известно компании, студии по разработке приложений, софта и чего-либо ещё или даже разработчик, который пишет код для себя любимого (ну, конечно, в своих сугубо личных интересах), довольно часто должны иметь дело с тестированием кода или определенного компонента, набора компонентов, системы или даже, возможно, набора систем на наличие ошибок, недоработок, уязвимостей и прочих неисправностей, которые могут возникнуть при реализации и сопровождении готового продукта. Конечно, одной из главных задач является снижение затрат и потерь как временных, так и финансовых, которые могут возникнуть из-за некорректной разработки. И их необходимо устранять как можно скорее, не прибегая к использованию ручного кропотливого труда. К счастью, в наше время «плуг и мотыга» уходят в прошлое, им на смену приходит упрощение и автоматизация. В ServiceNow тестирование является важнейшей частью обеспечения качества критически важных для бизнеса процессов. Для предприятий, использующих ServiceNow, платформа автоматизированного тестирования ServiceNow (ATF) является недавно разработанным средством решения многих мануальных процессов, но не всех, так как часть из них всё ещё нуждается именно в ручной проверке и человек все ещё играет свою роль, но об этом чуть позже.

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

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

Платформа автоматизированного тестирования ServiceNow включает инструменты для создания и запуска автоматизированных тестов для проверки функционального соответствия приложений, настроек или конфигураций и много чего ещё. С помощью ATF пользователи могут запускать тесты автоматизации для определенной части приложения или модуля с помощью так называемых test suite, набора тестов. Такие «тестовые костюмы» могут быть дочерними или родительскими по отношению к другим подобным наборам. Пользователи могут просматривать автоматизированные шаги в записи "Результат теста" на соответствующей вкладке под каждым шагом теста. Тестирование будет играть важную роль при обновлении экземпляра до следующей версии. В качестве наилучшей практики пользователи могут запускать тесты в среде разработки или тестирования вместо рабочей среды.

Лучше всего выполнять тестирование и проверку в любом современном SDLC (жизненном цикле разработки программного обеспечения). Несмотря на то что самые ранние версии ServiceNow требовали ручного выполнения тестирования экземпляра, ServiceNow добавила свой собственный ATF из коробки (out-of-the-box), чтобы помочь автоматизировать эти процессы, и продолжает поддерживать и расширять ее. Такие тесты охватывают несколько показателей, включая видимость навигатора приложений, проверку и отправку форм и упорядочивание на портале услуг, которое имитирует взаимодействие пользователя со страницей в реальном времени. На стороне сервера ATF можно использовать для проверки входящих запросов REST, операций CRUD, элементов каталога, а также для создания пользовательских сценариев тестирования и конфигураций шагов тестирования. Кроме того, ATF оснащен инструментами, которые позволяют логически группировать тесты с использованием наборов тестов, а также проводить запланированное тестирование с несколькими браузерами и автоматические уведомления и отчеты. Основные функции ATF от ServiceNow обеспечивают широкий диапазон покрытия. На стороне клиента ATF позволяет пользователям создавать и выполнять тесты пользовательского интерфейса. Подробнее архитектура описана ниже на картинке. Когда перейдём к реальным кейсам, я думаю, станет более понятно, что вообще происходит с каждым из компонентов.

Рисунок 1 – Базовая архитектура основных АТF фич-платформы ServiceNow
Рисунок 1 – Базовая архитектура основных АТF фич-платформы ServiceNow

Зачем тестировать ServiceNow?

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

Новое в выпуске «Квебека»

1.Идентификация компонентов

Реализуйте альтернативный способ идентификации вашего компонента с помощью sn-atf-id-атрибута.

2.ATF учитывает роли только для чтения на этапах тестирования категории сервера

Automated Test Framework учитывает роли только для чтения на этапах тестирования «Вставка записи», «Обновление записи» и «Удаление записи».

3.Отправка модальной формы

Теперь вы можете отправить модальную форму на этапах тестирования категории «Форма».

Новое в выпуске Paris

1. Добавить вложения к форме (SP)

Протестируйте функциональность прикрепления файла к виджету формы ServiceNow®Service Portal.

2. Версия и порядок пользовательских компонентов пользовательского интерфейса

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

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

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

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

Чтобы решить, нужно ли вам, клиенту, это «автоматизирование», попробуем подробнее разобрать плюсы и минусы, и это поможет сделать свой выбор.

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

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

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

Использование собственного решения ServiceNow для автоматизации тестирования имеет некоторые преимущества.

Преимущества ATF

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

  1. Включает поддержку: Поддержка включена из ServiceNow. Однако объем учебных материалов ограничен, но в некоторых случаях разработчики должны полагаться на сообщества пользователей для решения своих проблем, документацию и курсы на NowLearning (портал для обучения). Адаптируется к изменениям пользовательского интерфейса: ATF учитывает изменения пользовательского интерфейса (пользовательского интерфейса) ServiceNow и соответствующим образом адаптирует тесты, вместо того чтобы нарушать их, что является общей проблемой для некоторых сторонних средств автоматического тестирования. Это означает, что с помощью ATF нагрузка на техническое обслуживание в некоторой степени снижается.

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

  3. Специфика ServiceNow: Поскольку ATF встроен в ServiceNow, он предназначен для соответствия индивидуальным приложениям и уникальным конфигурациям проекта, и с помощью экспертов ServiceNow можно настроить решение в соответствии с конкретными требованиями команд и направлений.

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

Невозможно добиться увеличения ROI сразу, как при планировании тестирования и фазы документации, ручное тестирование может занять меньше времени, так как для этого потребуется только документация. С другой стороны, использование ATF потребует одновременного документирования и настройки тестов, что означает более длительную первоначальную настройку. В долгосрочной перспективе можно понять его значительную ценность.

При выполнении ручного теста тестировщик должен будет выполнить все действия, которые требуются в тестовой документации, периодически обращаться к документации, чтобы не сбиться с пути, а также регистрировать все результаты. С ATF все заранее настроено, по большей части все, что требуется, - это нажать кнопку «Запустить тест». Это означает, что, скажем, при семиэтапном тесте вручную необходимо выполнить 19 действий по сравнению с одним действием при использовании ATF.

Таким образом, несмотря на то что создание и конфигурация тестов занимает немного больше времени, чем ручное тестирование, автоматическое тестирование быстро компенсирует время и деньги, увеличивая разрыв по мере выполнения и изменения тестов из-за новых функций и новых релизов. Также все эти тесты сохраняются на экземпляре и к ним легко можно получить доступ, скопировать и использовать наиболее подходящий при наличии таковых в рамках проекта. То есть можно будет ещё быстрее создавать новые тесты, а для особо используемых есть специальный Test Templates, содержащий все тест-шаги для определенного случая, например, «Открыть существующий случай, заполнить, отправить». И таких шаблонов достаточно много, их можно дополнять своими, так что это изрядно увеличивает скорость разработки тестов и позволяет команде и проекту сосредоточиться на том, что более важно.

Рисунок 2 – График применения ручного тестирования и автоматизации в сравнении.
Рисунок 2 – График применения ручного тестирования и автоматизации в сравнении.

 

Преимущества ATF от ServiceNow

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

Недостатки

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

Ограничения ATF

Не является комплексным решением: Хотя ATF можно настроить в соответствии с конкретными требованиями к тестированию вашего бизнеса в рамках ServiceNow, имейте в виду, что ATF не является комплексным решением для тестирования. Большинство современных ИТ-ландшафтов представляют собой сложную совокупность, включающую множество приложений, и процессы тестирования в целом. Для тестирования вам понадобится решение, которое может протестировать каждый аспект этого ландшафта, а не только в рамках ATF -фреймворка.

Перейдем к практике

Чтобы стало понятно, как это всё выглядит, можно показать несколько примеров из практики. В основном работа ведётся с тремя приложениями: это тест, test suite (набор тестов) и результаты тестирования этих приложений. Эти и ряд других приложений, относящихся к тест-фреймворку, достаточно просто найти и использовать, имея права администратора платформы, с помощью навигатора приложений, как показано ниже на картинке:

Рисунок 3 – Приложения ATF из Application Navigator
Рисунок 3 – Приложения ATF из Application Navigator

Главный виновник торжества: тест

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

Рисунок 4 – Схематичное представление примера архитектуры одного из тестов
Рисунок 4 – Схематичное представление примера архитектуры одного из тестов

«Это один маленький шаг для теста, но гигантский скачок для всего тестирования». Настраиваем тестовые шаги.

При добавлении нового тестового шага нас встречает модальное окно конфигуратора шагов. Выбираем необходимые шаги, которые для удобства разделены по категориям (например, Form, Service Catalog, REST и др.), настраиваем и отправляем форму. Таким образом делаем для всех необходимых шагов выполнения сценария, которые необходимо реализовать.

Рисунок 5 – Конфигуратор тестовых шагов
Рисунок 5 – Конфигуратор тестовых шагов

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

Переключение:

Переключение на соответствующего пользователя

Открыть форму:

Откройте необходимую форму таблицы и заполните необходимые данные

Проверка полей:

Проверка значений полей, основанных на других полях или проверках

Отправить:

Отправьте форму

Открыть существующую форму:

Откройте существующую форму для редактирования

Обновление:

Обновите форму необходимыми сведениями, такими как назначение пользователей или обновление значений полей или включение комментариев

Запрос:

Запрос других записей для выполнения дополнительных изменений

 

В итоге получается примерно такой тест:

Рисунок 6 – Пример созданного теста с добавленными тест-шагами
Рисунок 6 – Пример созданного теста с добавленными тест-шагами

А вот как выглядит тest suite. Его используют для объединения нескольких тестов в один: так удобнее их запускать и смотреть на результаты каждого из них во вкладке “Test Results” или “Parametrized Test Results”. Во вкладке “Test results” после прохождения тest suite можно ознакомится с результатом, посмотреть на ошибки выполнения теста, если таковые будут. Также можно добавлять дочерние тest suite или делать их дочерними.

Рисунок 7 – Пример test suite (набора тестов) в представлении разработчика
Рисунок 7 – Пример test suite (набора тестов) в представлении разработчика
Рисунок 8 – Схематичное представление архитектуры одного из примеров набора тестов (Test suite), включающего несколько дочерних наборов
Рисунок 8 – Схематичное представление архитектуры одного из примеров набора тестов (Test suite), включающего несколько дочерних наборов

Ну и наконец, для проверки используем ранер, где и смотрим прогресс по тесту. Позже можно будет посмотреть в вкладке “Test Results” или “Parametrized Test Results” результаты каждого из тестов:

Рисунок 9 – Пример запущенной страницы тест-ранера в действии и просмотр результатов пройденного тестирования в UI16
Рисунок 9 – Пример запущенной страницы тест-ранера в действии и просмотр результатов пройденного тестирования в UI16
Рисунок 10 – Детальный обзор результатов проведённого теста с рассмотрением итога прохождения каждого шага
Рисунок 10 – Детальный обзор результатов проведённого теста с рассмотрением итога прохождения каждого шага

Для примера можно привести схему, описывающую запуск тестов на примере тest suite, включающего несколько тестов на рисунке ниже:

Рисунок 11 – Схематичное представление архитектуры test suite, содержащего несколько тестов
Рисунок 11 – Схематичное представление архитектуры test suite, содержащего несколько тестов

Автоматизированная платформа доступна для запуска и повторного использования. Это упростит процесс выполнения и проверки ошибок и ускорит проверки после развертывания сборки и других изменений в экземпляре ServiceNow. Для достижения эффективности нам необходимо проконтролировать, проверяет ли тестер вручную каждое обновление или модификацию, произошедшие с системой. Ранер (запускающий тест) клиентских тестов позволит наблюдать за выполнением шагов тестирования, связанных с формами или любыми другими элементами пользовательского интерфейса (UI), backend выполняется невидимо для нас. Когда начнется выполнение теста, пользователю необходимо нажать на модуль запуска клиентских тестов в меню приложения ATF. Приложение поддерживает как ручные тесты, так и запланированные запуски клиентских тестов.

Лучший процесс практики использования ATF может быть изображен следующим образом:

Рисунок 12 – Лучшие практики использования ATF-фреймворка, описанные в последовательности действий при работе с тестами
Рисунок 12 – Лучшие практики использования ATF-фреймворка, описанные в последовательности действий при работе с тестами

Ещё к ряду лучших практик по созданию тестов можно добавить:

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

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

  • Проверяйте результат. Сосредоточьтесь на результате, а не на проверке каждого пункта теста. Имейте это в виду при проверке бизнес-правил или процессов конструктора потоков. При тестировании потоков создайте условия для запуска потока в тесте, затем проверьте результат потока на ожидаемый результат.

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

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

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

Основными же ролями для работы с фреймворком ATF являются следующие:

Роль

Описание роли

Test Administrator (atf_test_admin)

Администратор

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

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

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

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

- редактировать системные свойства ATF

- создание конфигураций этапов тестирования

Необходимые навыки кодирования: Профессиональные

Test designer (atf_test_designer)

Разработчик тестов

Разработчик тестов является наиболее распространенной ролью ATF в проекте ServiceNow. Любой член команды, которому назначается роль тест-дизайнера может создавать и запускать тесты и наборы тестов. Большинству разработчиков приложений назначается эта роль для того, чтобы создавать и настраивать тесты ATF.

Хотя навыки программирования не являются обязательными, для отладки тестов требуется продвинутый уровень обслуживания и знания ATF.

Разработчики тестов могут выполнять следующие функции:

- создание, редактирование и удаление наборов тестов

- создание, редактирование и удаление тестов

- добавление шагов тестирования в тесты с использованием существующих конфигураций шагов тестирования (новые конфигурации шагов тестирования могут быть созданы только администратором тестирования)

- запуск тестов и наборов тестов

- просмотр результатов тестирования

- просмотр системных свойств ATF

Требуемые навыки кодирования: Низкие или без навыков создания кода

Web Service Tester

Тестер веб-сервисов

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

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

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

- создание тестов веб-службы

Необходимые навыки кодирования: Профессиональный уровень

 

Подведем итоги преимуществ и ограничений платформы автоматизированного тестирования

Как ServiceNow пишут на своей странице, ATF предназначен для проверки изменений, которые вы вносите в свой экземпляр, но не для тестирования базовой функциональности ServiceNow. ATF также не предназначен для модульных тестов, тестов производительности или нагрузочных тестов. Если требования проекта выходят за рамки этой области, понадобятся дополнительные инструменты тестирования, которые усложнят ваш ИТ-ландшафт.

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

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

На текущем проекте был опыт, когда я работал над тестом. Проделав некоторую работу по разработке теста, столкнулся с тем, что не могу реализовать заполнения macro with label из record producer, а так как я и команда особо не были осведомлены о путях решения этого вопроса, мы начали их искать. К сожалению, не нашли ничего, кроме как такого же запроса на HI-портале, где был поднят тот же вопрос. К еще большему сожалению, решение в ответах было такое, что решения с ATF пока что нет. Так что надо учитывать, что и такое происходит: не всегда знаешь возможности ATF и отнюдь не всегда представляется возможным реализовать требования пользовательской ATF -истории, не потеряв на поиск решения время. Остается только надеяться на релизы и ждать, что проект обновится до нового релиза и можно будет выполнить требования для тестирования. Могу только отметить, что апгрейд происходит не очень часто и пока что нельзя получить обновление отдельно для ATF вне платформы.

Известно, что, например, для релиза «Мадрид» были ограничения: проверка полей в разделах с вкладками скрывается при загрузке страницы и не заполняется автоматически. Хотя это нужно делать вручную, вы можете активно щелкнуть во время выполнения шага теста, чтобы обеспечить доступ к полям с вкладками. Откат тестов - это вызов Selenium и CapIO - это сторонние среды тестирования, которые позволяют записывать и повторно выполнять тестовые действия, чтобы обеспечить покрытие для тестов пользовательского интерфейса, не охватываемых стандартным ATF. Конфигурация тестового шага может быть недоступна для немедленного использования. Однако вы можете создавать свои собственные пользовательские тестовые сценарии на стороне сервера и конфигурации тестовых шагов (например, для проверки уведомлений).

А что получается в итоге?

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

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

Автор: Радион Шаханов

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Был ли у вас опыт внедрения ServiceNow?
100% Да 1
0% Нет 0
0% Я не знаю, что это такое :) 0
Проголосовал 1 пользователь. Воздержавшихся нет.
Источник: https://habr.com/ru/company/accenture/blog/584658/

Интересные статьи

Интересные статьи

В русскоязычном интернете достаточно мало информации о логическом программировании, особенно адаптированной для новичков в этом направлении. Эту проблему я попытался отча...
Помните старую шутку про то, что часам на 19 камнях не хватает двух: на один положить, другим ударить? Но что для обычных пользователей юмор, для производителей техники — серьёзный подход...
Существует одна совершенно бесподобная методика, позволяющая держать производительность веб-проекта под контролем. Она заключается во внедрении в процесс разработки механизмов, результаты работы ...
Бизнес-смыслы появились в Битриксе в начале 2016 года, но мало кто понимает, как их правильно использовать для удобной настройки интернет-магазинов.
Недавно я натолкнулся на интересную работу итальянских учёных о сильно недооценённой роли удачи и случайности в нашей жизни. К сожалению, не нашёл полной версии на русском языке (может, плохо...