Тестирование: пример создания сценарного UI теста для платформы 1С
Разработка - Инструментарий разработчика
В предыдущей статье мы рассматривали вопрос практического создания юнит тестов с использованием Фреймворка xUnitFor1C (Тестирование: пример из семи шагов создания Unit-теста для платформы 1С), а сейчас переходим к следующей теме в рамках автоматизации тестирования – «практическое создание сценарных UI тестов».
Зачем это нужно?
Автоматические GUI тесты (или сценарные UI тесты) – один из самых дорогих видов автоматизации тестирования. Они имитируют действия пользователей, тем самым служат для проверки функционала, который будет использоваться. Таким образом наличие подобных тестов при доработке или разработке продуктов имеет высокую ценность с точки зрения качества продукта.
В предлагаемом подходе мы акцентировали внимание на снижении сложности разработки подобных тестов и соответственно стоимости затрат на их внедрение и дальнейшее использование в эксплуатации.
В предлагаемой статье информация разбита на две основные части – это теоретическое описание и демонстрация создания на примере. Во второй части содержатся сразу видео уроки, состоящие из шести частей по 4-5 минут каждая.
Уровень пользователя для создания сценарных тестов - наличие понятия функционирования прикладного решения, и обзорные знания по инструменту – «Менеджер сценарного UI теста».
Большим плюсом будет наличие в команде сотрудника, умеющего формализовать требования тестируемых процессов – проще говоря знающего как нарисовать схему покрываемого тестами бизнес процесса (если знает BPMN, то вообще супер!).
Исходные условия:
- Тестируемая конфигурация 1С: УТ 11 (проверялось на версиях: 11.3.3.205) или ERP 2 (проверялось на версиях: 2.2.4.81, 2.4.1.215, 2.4.3.137).
- Покрываемый тестами функционал: Бизнес процесс продажи на ордерном складе по 100% предоплате.
- API: 1С Автоматизированное тестирование.
- Инструмент: «Менеджер сценарного UI теста».
- (Опционально) Просмотр результатов тестирования/запуск: Конфигурация «Тестирование 3.0».
Постановка задачи:
- Мы должны создать автоматический GUI тест, покрывающий функциональность системы при выполнении процесса продажи.
- Тест должен обеспечивать гибкость изменения параметров (быть параметризированным): Организация, Клиент, Склад, Товар, Услуга.
- Тест должен позволять многократный запуск на системе без отката базы на первоначальные условия.
- Тест должен учитывать модульность построения (возможность многократно использовать одинаковые/повторяющиеся действия).
- Тест должен позволять выполнить проверку функционала под разными правами/ролями.
- Тест выполняет проверку корректности работы с правильными данными (мы не проверяем срабатывание блокировок остатков и др. это пусть происходит в юните тестах, но если хотите то можете закладываться на это)
Описание процесса:
Приведем упрощенную и достаточную для понимания схему процесса продажи, в рамках которой будем писать тест. Схему приводим в формате BPMN.
Разобьем схему на блоки, в рамках которых будем создавать нашу библиотеку и сценарий. Разбиение выполняем в границах дорожек пользователей, последовательности действий и ограниченных одним целевым объектом данных.
В результате у нас должен получиться набор из блоков отражающих создание документов (см. рис. выше) "Коммерческое предложение" (1), "Заказ клиента" (2), "Поступление безналичных денежных средств" (3.2), "Расходный ордер" (4.2), "Реализация товаров и услуг" (5) и действий с ними "Печать счета на оплату" (3.1), "Отгрузка Заказа клиента" (4.1), "Закрытие заказа клиента"(6*) .
Нам предстоит практическая часть - запись сценариев для каждого блока, простановка параметров и финальная сборка в единый целый тест. Об этом видео ниже, но вы можете перепрыгнуть и перейти непосредственно к готовому примеру в приложении.
Основными внешними параметрами для сценария будут: Клиент, Организация, Склад, Товар и Услуга; основными внутренними параметрами будут: Номер коммерческого предложения и номер заказа клиента. По входящему номеру коммерческого предложения будет создаваться заказ клиента, а в рамках номера заказа клиента будут создаваться все остальные документы.
Тест будет использовать только возможности автоматизированного тестирования без программного обращения к базе данных, и возможности конструктора баз программного кода 1С, т.о. для создания сценария тестирования не требуется знания языка 1С и обладание навыков программирования.
Практические видео уроки:
Как запустить пример?
- Скачиваем обработку "Менеджер сценарного UI теста" и архив со сценарными тестами из приложения (менеджер можно найти на GIT HUB по ссылке ниже).
- Распаковываем архив со сценарными тестами в произвольную директорию на диск (должно получиться две папки "Готовые сценарии" и "Блоки сценариев").
- Запускаем предприятие 1С в режиме TESTMANAGER. Пропишите в строке запуска ярлыка (/TESTMANAGER) или можете перейти во вкладку настройки и нажать кнопку "ЗАпустить базу по умолчанию как менеджер тестирования".
- Указываем настройки. Открываем обработку в предприятии и переходим во вкладку настройки и указываем:
а) Вкладка "Параметры работы редактора" пути "Путь к каталогу сценариев (готовые тесты)" (это "Готовые сценарии") и "Путь к каталогу библиотеки сценариев" (это "Блоки сценариев")
б) Вкладка "Настройки подключения по умолчанию (к предприятию 1С)" параметры подключения к тестируемому клиенту: "Файловая база" (если файловая ставим флаг), "Путь подключения клиента тестирования" (обычно это выглядит так "сервер 1c:1541/ERP_demo"), "Пользователь 1С" и "Пароль 1С", "Путь к исполняемому файлу 1С". - Загружаем тест. Перейти на вкладку "Сохранение/Загрузка" и указать путь к файлу сценария "БП Продажи.xml" и жмем кнопку "Загрузить сценарий".
- Запускаем тест. Откроется вкладка "Дерево сценария", на ней жмем кнопку "Запустить клиента/ов тестирования" и далее кнопку "Пуск" (бегущий человечек).
- Наблюдаем за ходом выполнения.
Дополнительно:
- В приложении находится обработка "менеджер сценарного UI Теста" и файлы скрипты проекта (xml).
-
- Оптимально настраивать сценарий под определенную целевую базу.
- При запуске теста убедитесь, что отключены или выполнены глобальные всплывающие настройки "Настройка проверки контрагентов" и др., т.к. они могут прервать выполнение теста.
- Проект находится на GIT HUB по адресу: TestingTool-3
- Перед выполнением сценарных тестов, мы всегда запускаем обработку загрузки начальных данных для выполнения теста, что позволяет иметь в распоряжении достаточное количество товаров на складе.
- Использование сценарных тестов для нашей команды приносит большую пользу в обеспечении качества разрабатываемых продуктов.
Специальные предложения
См. также
Cashback 35% при покупке 1С лицензий на счет INFOSTART.RU с 27.11 по 04.12 Промо
Оформляете заказ на 1С лицензии или конфигурации. Получаете 35% от стоимости на счет в профиле INFOSTART.RU. Выбираете сервисы и продукты на сумму кэшбэка.
Просмотр и анализ структуры базы данных (отчет на СКД) 120
5 стартмани
24.07.2019 8330 92 YPermitin 25
Перенос документов и справочников ERP 2 / КА 2 / УТ 11 => БП 3.0 Промо
Перенос позволяет настроить собственный обмен данными между указанными программами, альтернативный предлагаемому фирмой 1С. Предоставляем техподдержку по всем вопросам данного обмена. Можем подключиться к вам удаленно для разбора ситуаций. Оперативно обновляем при выходе новых релизов 1С. Бесплатные обновления в течение полугода.
19700 руб.
Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD 141
1 стартмани
03.06.2019 11607 1 ripreal1 86
Онлайн-курс "Технология выполнения проектов ERP-класса – процессный подход". Третий поток. Курс проходит с 21 января по 18 марта 2020 года. Промо
Курс разработан Внедренческим центром «Раздолье». Курс предназначен для подготовки аналитиков, архитекторов и руководителей проектов автоматизации процессов управления с использованием комплексных ИТ-систем (1С:ERP, 1С:УХ, 1С:КА, 1С:УТ). В основе курса лежит методика применения процессного подхода.
9000 рублей
Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером 196
1 стартмани
13.05.2019 18114 93 Diversus 38
С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо
Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.
Расширение "Быстрая проверка кода" для конфигурации 1С:Автоматизированная проверка конфигураций 92
1 стартмани
26.03.2019 10797 42 Bazil 25
Подборка программ для взаимодействия с ЕГАИС Промо
ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.
Методика оптимизации программного кода 1С: проведение документов 84
1 стартмани
19.03.2019 15449 13 dmitrydemenew 83
Новый раздел на Инфостарте - Electronic Software Distribution Промо
Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.
- Низкие цены, без скрытых платежей и наценок
- Оперативная отгрузка
- Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
- Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)
Инструктор. Прототип инструмента создания быстрых пользовательских инструкций 71
1 стартмани
15.02.2019 7724 37 ROM_NN 8
Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо
Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!
29700 руб.
Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019) 178
5 стартмани
09.01.2019 24444 225 informa1555 174
Вакансия Автор новостных обзоров на тему 1С и бухучета, По совместительству Промо
Редакция Infostart.ru будет рада сотрудничеству с 1С-специалистом, умеющим и любящим излагать свои мысли в письменной форме. Если вы работали в IT-изданиях или имеете опыт ведения технологического блога/канала/группы, если сможете сделать обзор обработок из каталога infostart.ru/public/all/, то у вас большое преимущество.
Управление задачами в 1С - готовая подсистема с открытым кодом и широким базовым функционалом. Версия 1.0.6 94
2 стартмани
17.12.2018 11398 82 for_sale 38
Очный семинар по регулярному менеджменту Александра Фридмана "Вы или Хаос", 12 декабря 2019 г. , Санкт-Петербург Промо
Семинар по регулярному менеджменту от Александра Фридмана для собственников, первых лиц и топов. Технология управленческого планирования, комплексного управления временем и другими ресурсами, выполнением поручений, делами, информацией, контактами (встречи-звонки-почта).
от 11000 до 29000 рублей
Go. Разбор лога технологического журнала. Достойная альтернатива perl'у 85
1 стартмани
24.10.2018 11768 4 lazarenko 39
Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо
На интенсиве будут рассмотрены все теоретические вопросы, связанные с устройством механизма бизнес-процессов – это необходимо для успешной сдачи экзамена 1С:Специалист по платформе. Также, в качестве практического примера, будет решена задача, аналогичная экзаменационной.
777 рублей
Пользовательское определение языка 1С для Notepad++ и пример использования списка функций для навигации под свои нужды 66
1 стартмани
10.09.2018 7919 43 albert.goncharov 23
Подборка решений для взаимодействия со ФГИС «Меркурий» Промо
С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.
Специальное предложение по 1С:Документооборот 8! Промо
Оперативно навести порядок в документообороте? Легко! Воспользуйтесь специальным предложением! Внедрение за 2 недели! Фиксированная цена и гарантия результата!
Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 65
5 стартмани
09.08.2018 16901 23 informa1555 26