Vanessa Automation + СППР

Публикация № 1150505

Методология - Проектирование - СППР

76
Vanessa Automation. Использование автоматизированного тестирования в СППР.

В СППР 2.0 стал доступен механизм автоматизированного тестирования.  В качестве фреймворка тестирования используется Vanessa Automation.

В начале настроим СППР для работы с функционалом тестирования:

  1. Настройка тестирования в СППР 
  2. Проекты
  3. Настройка локального запуска тестов
  4. Эталонные базы
  5. Известные шаги.

Затем рассмотрим основные объекты и приемы работы с функционалом тестирования в СППР:

  1. Сценарии работы пользователей
  2. Процессы
  3. Параметры сценариев
  4. Подсценарии
  5. Работа с макетами
  6. Настройки запуска
  7. Запуск сценариев на CI сервере
  8. Загрузка ошибок в СППР

Часть разделов снабжена видеоинструкциями.

 

Настройка тестирования в СППР

 

 
 Видеоинструкция
 
 Текст фичи
Сценарий: Настройка СППР
И видеовставка  "Настройка тестирования"
Включить функциональность тестирования можно выбрав пункт меню Администрирование Общие настройки и Установить флаг Использовать сценарии тестирования
	@YandexTTS: ermil,good
	Затем клик на картинку "Администрирование"
	Затем клик на картинку "ОбщиеНастройки"
	Затем клик на картинку "ТестированиеОбщиеНастройки"
	Затем клик на картинку "ФлагСценарииТестирования"
#[autodoc.ignorestep]
И Я закрываю окно 'Общие настройки'
Дано текст субтитров "Какие еще настройки необходимы?"
В персональных настройках 
	@YandexTTS: ermil,good
	Затем клик на картинку "Органайзер"
	Затем клик на картинку "ПерсональныеНастройки"
	Затем клик на картинку "ТестированиеПерсональныеНастройки"
Необходимо указать каталог данных для тестирования.Здесь будут лежать служебные файлы для работы фреймв^орка тестирования
	@YandexTTS: ermil,good
	И я рисую рамку вокруг картинки "КаталогДанных"
		|'Цвет'          | 'Красный'        |
		|'Длительность'  | '3000'           |
		|'Толщина'  	 | '3'           	|
Также нужно указать путь к фреймв^орку для запуска тестов Vanessa Automation
	@YandexTTS: ermil,good
	И я рисую рамку вокруг картинки "ФреймворкТестирования"
		|'Цвет'          | 'Красный'        |
		|'Длительность'  | '5000'           |
		|'Толщина'  	 | '3'           	|
Дано текст субтитров "Для корректной работы фреймв^орка необходимо, чтобы у пользователя, под которым запускается эспэпээр, была отключена защита от опасных действий"
#[autodoc.ignorestep]
И Я закрываю окно 'Мои настройки'
Также необходимо создать проект 
	@YandexTTS: ermil,good
	Затем клик на картинку "Главное"
	Затем клик на картинку "Проекты"
	Затем клик на картинку "СоздатьПроект"
	И в поле 'Наименование' я ввожу текст 'Основной проект'
	Затем клик на картинку "ЗаписатьПроект"
И версию проекта 
	@YandexTTS: ermil,good
	Затем клик на картинку "ВерсииПроекта"
	Затем клик на картинку "СоздатьВерсию"
	И в поле "Редакция" я увеличиваю значение
	И в поле "Подредакция" я увеличиваю значение
	Затем клик на картинку "ЗаписатьПроект"

 


 

 

Чтобы включить в СППР функциональность тестирования нужно установить признак в разделе «Администрирование» – «Настройка параметров системы» – «Общие настройки» установить флаг «Использовать сценарии тестирования»:

В персональных настройках («Органайзер» – «Персональные настройки») заполнить поля:

  • «Каталог для данных тестирования» – здесь будут лежать служебные файлы для работы фреймворка тестирования (этот каталог будет очищаться при работе с СППР);

  • и «Фреймворк для запуска тестов» – указать путь к фреймворку Vanessa Automation.

Важно: для корректной работы фреймворка необходимо, чтобы у пользователя, под которым запускается СППР, была отключена защита от опасных действий. 

 

Проекты

 

В СППР для каждой разрабатываемой конфигурации создается отдельный проект. 

В разделе «Главное» – «Проекты» создадим «Основной проект». 

И версию проекта.

 

Настройка локального запуска тестов

 

 
 Видеоинструкция
 
 Текст фичи

 

Для запуска сценариев необходимо выполнить «Настройку БД для запуска тестов»:

В настройках локального запуска сценария указывается:

  • Адрес ИБ – путь к информационной базе, на которой будут запускаться тестовые сценарии;

  • Эталонная база – используется для хранения параметров подключения к эталонным базам тестирования;

  • Ключи запуска;

  • Тип клиента – Тонкий или Web;

  • Также можно указать менеджер тестирования – менеджером тестирования может выступать как текущий сеанс СППР, так и сеанс другой базы. 

 

Эталонные базы

 

Рассмотрим подробнее элемент справочника «Эталонные базы»:

  • На закладке «Описание» указывается наименование, идентификатор базы, проект.

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

 

Известные шаги

 

 
 Видеоинструкция
 
 Текст фичи

 

В сценариях СППР можно использовать шаги из библиотеки шагов Vanessa Automation.

Для выгрузки шагов из Vanessa Automation необходимо перейти на закладку «Работа с UI», нажать кнопку «Добавить известный шаг»:

В открывшейся форме в «Еще» выбрать команду «Выгрузить шаги в JSON», указать путь и имя файла.

После выгрузки, в СППР необходимо зайти в справочник «Шаги сценариев пользователей» и загрузить шаги из файла.

 

Сценарии работы пользователей 

 

 
 Видеоинструкция
 
 Текст фичи

 

В справочнике «Сценарии работы пользователей» хранятся простые сценарии тестирования.

Рассмотрим настройки элемента справочника «Сценарии работы пользователей»:

  • На странице «Описание» указываются основные поля: 

    • наименование;

    • функция, которую тестирует данный сценарий (если функциональная модель в СППР не ведется, то можно создать одну функцию и указывать ее во всех сценариях) ;

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

  • На странице «Текст сценария» указывается текст сценария тестирования на модификации языка Gherkin, которая разработана специально для использования с платформой «1С:Предприятие». Это декларативный, легко воспринимаемый человеком язык, который имеет определенный синтаксис. Также на закладке «Текст сценария» выводятся известные шаги и их можно добавлять в сценарий, не заходя в Vanessa Automation.

Подробнее про синтаксис языка Gherkin можно прочитать в статье Владимира Литвиненко //expert.chistov.pro/public/969637/

Из формы элемента можно запустить фреймворк тестирования с данным сценарием:

  • Запуск тестов и Запуск тестов с текущего шага  - открывают фреймворк тестирования и сразу запускают сценарий на выполнение.

  • Запустить фреймворк тестирования с данным сценарием - открывает фреймворк тестирования  с данным сценарием.

Откроется фреймворк тестирования Vanessa Automation:

Подробно на работе с фреймворком останавливаться не буду. На сайте есть цикл статей от Владимира Литвиненко по работе с фреймворком Vanessa-ADD, который по функциональности тестирования во многом совпадает с Vanessa Automation:

Также у Vanessa Automation есть возможность записи видеоинструкций. О них рассказывает в своих статьях Павел Олейников:

 

Процессы

 

Как говорилось ранее, в справочнике «Сценарии работы пользователей» хранятся простые сценарии тестирования. Более сложные сценарии тестирования хранятся в справочнике «Процессы». Процессы состоят из последовательности простых сценариев тестирования.

Для процесса указываются «Шаги процесса», каждый шаг связан со сценарием работы пользователя.

Для того, чтобы сценарий работы пользователя можно было выбирать в процессе, необходимо установить флаг «Разрешено использовать в процессах»:

Методология использования «Процессов» и «Сценариев работы пользователей» состоит в том, что в «Сценариях работы» хранятся максимально обособленные, параметризованные тесты, которые используются как шаги в «Процессах». Таким образом, если есть ошибка в тесте, то исправление нужно будет вносить только в один сценарий, хотя «Процессов», связанных с ним, может быть много.

 

Параметры сценариев 

 

 
 Видеоинструкция
 
 Текст фичи

 

В тексте сценария можно использовать внутренние и внешние параметры. 

Внутренние параметры бывают трех типов:

  • строка (например, "ИмяСправочника" или 'ИмяДокумента');

  • число (например, 20);

  • дата (например, 18.09.2019).

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

Тогда на закладке «Параметры» появился параметр «ИмяСправочника»:

И для него мы можем задать значение по умолчанию (в приведенном примере значение по умолчанию – «Номенклатура»).

Также можно передавать составные параметры:

В данном примере в сценарии один параметр "Поступление товаров №[НомерПоступления] от [ДатаПоступления]", в котором два внешних параметра «НомерПоступления» и «ДатаПоступления».

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

Где значение параметра – это Таблица Gherkin. Таблица Gherkin имеет следующий вид:

| 'Код'             | 'Наименование'   | 

| '000000012' | 'Тестовый пример' |

Где первая строка – это имена колонок, вторая и следующие – значения колонок. 

Внешние параметры доступны для переопределения в шагах процесса:

 

Подсценарии

 

 
 Видеоинструкция
 
 Текст фичи

 

Также для сценариев можно использовать подсценарии.

В тексте сценария подсценарии обозначаются подчеркиванием, это означает, что в справочнике Сценарии работы пользователей есть сценарий с таким наименованием. Перейти к подсценарию можно по кнопке F12.

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

В открывшемся окне в поле «Имя шаблона» необходимо вставить название шага:

И нажать на кнопку «Создать шаблон». Тогда будет открыта форма нового элемента справочника «Сценарии работы пользователей».

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

Если параметров несколько, то порядок параметров в тексте сценария и порядок параметров в подсценарии на закладке «Параметры» должны совпадать.

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

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

 

Работа с макетами

 

 
 Видеоинструкция
 
 Текст фичи

 

В фреймворке Vanessa Automation есть шаги, в которых используются макеты. Например:

  • И таблица "Список" равна макету "СписокНоменклатуры" 

  • Дано Табличный документ "ТекущаяПечатнаяФорма" равен макету "Поступление"

В СППР макеты можно хранить непосредственно в справочнике Сценарии работы пользователя. Для этого сохраненный макет в формате mxl нужно добавить в присоединенные файлы:

Таким образов, в присоединенных файлах можно хранить любые файлы эталонов.

Для того, чтобы макеты стали более универсальными, можно:

  • В ячейках, которые не надо сравнивать установить *.

  • Использовать переменные: $НаименованиеОрганизации$.

Например, в макете:

Можно исключить из сравнения ячейку с номером и датой документа и наименование организации брать из переменной:

 

Настройки запуска 

 

Для сценариев и процессов можно задать настройки запуска.  Они позволяют запускать одни и те же сценарии и процессы разными пользователями и с разными параметрами. 

Настройки запуска для сценариев хранятся в справочнике «Настройки запуска сценариев».

Для настройки указываются:

  • наименование настройки запуска;

  • сценарий, который будет запускаться;

  • эталонная база БД, на которой будет запускаться сценарий;

  • профиль пользователя, под которым будет запускаться сценарий;

  • параметры запуска. 

На закладке «Параметры теста» указываются параметры сценария:

Аналогично задаются настройки для запуска процессов:

Из настроек запуска сценариев или процессов  есть возможность выгрузить сценарии для версионирования в Git по кнопке «Выгрузить сценарии».

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

По кнопке “Выгрузить”, сценарии, процессы и данные эталонных баз выгружаются в формате yaml.

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

Запуск сценариев на CI сервере

Для запуска сценариев необходимо скомпилировать feature файлы из файлов yaml. Так как фреймворк тестирования Vanessa Automation загружает сценарии в формате feature.

Для этого необходимо сохранить обработку СборкаТекстовСценариев из конфигурации СППР.

Затем необходимо выполнить команду для формирования feature файлов:

"C:\Program Files\1cv8\8.3.14.1630\bin\1cv8c.exe" /F"D:\report\Base" /Execute "D:\report\СборкаТекстовСценариев.epf" /C"СобратьСценарии;JsonParams=D:\report\params.json"

Структура Json-файла выглядит следующим образом:

Где: 

  • ScenarioFolder – папка со сценариями в формате yaml.

  • ProcessFolder – папка с процессами в формате yaml.

  • LogFile – файл логов.

  • ModelDBSettings - имя файла эталонных БД.

  • FeatureFolder – каталог, в который будут выгружены собранные feature-файлы. Помимо feature-файлов в каталог выгружаются приложенные к сценарию файлы и json для Vanessa Automation.

  •  

Загрузка ошибок в СППР

 

 
 Видеоинструкция
 
 Текст фичи

 

Для загрузки ошибок тестирования в СППР необходимо:

  • указать настройки для загрузки ошибок в разделе «Администрирование» – «Интеграция с внешними системами». Необходимо указать каталог, в котором будут появляться файлы xml, сформированные, например, CI-сервером. 

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

Важно: имя конфигурации должно совпадать с названием конфигурации в xml файлах.

  • в Vanessa Automation на закладке «Сервис» – «Отчет о запуске сценариев» в разделе «Отчеты» необходимо установить флаг «Делать отчет в формате СППР» и указать каталог выгрузки.

После запуска в СППР регламентного задания «Загрузить ошибки из файлов» ошибки будут загружены в СППР:

Для таких ошибок устанавливается метод выявления «Автотесты».

 

По работе СППР в связке с Vanessa Automation есть вебинар «Автоматизированное тестирование в СППР 2.0» от фирмы «1С».

Вы можете присоединиться к проекту на GitHub. Как присоединиться к проекту, подробно описано в статье Андрея Полетаева: //expert.chistov.pro/public/1092009/

 

76

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Pr-Mex 124 07.11.19 18:14 Сейчас в теме
Это что-то новое! Описание материала в статье представлено и текстом и автовидео. Ещё и тексты сценариев приложены. Супер!
2. hawk911 08.11.19 05:23 Сейчас в теме
Да, круто получилось. Надо в "массы" внедрять!
3. JohnyDeath 295 08.11.19 07:36 Сейчас в теме
Отличная статья, спасибо!
За исходники видеоинструкций отдельный плюс!
4. lmnlmn 54 08.11.19 08:43 Сейчас в теме
5. toypaul 66 08.11.19 08:48 Сейчас в теме
Хм. Озвучка роботами по тексту?
6. toypaul 66 08.11.19 08:50 Сейчас в теме
У ... крутямба. Это получается по сценарию "Яндекс" видос озвучивает?
7. SvVik 76 08.11.19 09:12 Сейчас в теме
(6) Да. Голоса Ермил и Оксана.
8. Hans 1 08.11.19 15:15 Сейчас в теме
9. OPM 187 11.11.19 08:44 Сейчас в теме
10. Hans 1 11.11.19 09:35 Сейчас в теме
11. AlexPC 14.11.19 10:12 Сейчас в теме
У нас непонятки при сравнении ТД. Работаем в интерактивном режиме, сравнение табличных документов осуществляется по параметрам, указанным на вкладке "чтение макетов" (работа с ui, настройки). хотя из кода вроде как следует, что размеры заполненной части ТД должны определяться автоматически, куда копать?
12. anosin 27 14.11.19 15:44 Сейчас в теме
Как это был вэбинар недавно от 1С "Решение практических задач.." по этому поводу, интересно было послушать/посмотреть
Оставьте свое сообщение

См. также

Vanessa, улучшаем инструкции 58

Статья Бизнес-аналитик Пользователь Руководитель проекта Нет файла v8 1cv8.cf Windows Бесплатно (free) Vanessa Automation

Vanessa Automation умеет делать хорошие инструкции, давайте посмотрим, какие инструменты для этого есть.

30.10.2019    3373    OPM    4       

Vanessa, хочу все и сразу 111

Статья Программист Бизнес-аналитик Руководитель проекта Нет файла v8 Бесплатно (free) Vanessa Automation

Vanessa Automation это инструмент для тестирования прикладных решений на платформе 1С, но он/она может больше, чем только тестирование.

11.10.2019    4851    OPM    11       

Разработка и сценарное тестирование с Vanessa-ADD. Практические примеры сценариев. Шаги встроенной библиотеки 98

Статья Программист Архив с данными v8 Абонемент ($m) Практика программирования Разработка

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

1 стартмани

28.01.2019    11479    1    Vladimir Litvinenko    33       

Проектирование архитектуры и модификация программных продуктов как технология в сложных проектах системной интеграции и автоматизации на базе 1С: СППР 54

Статья no Нет файла v8 1С:Франчайзи, автоматизация бизнеса Бесплатно (free) Управление проектом Интеграция СППР

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

03.10.2018    10197    roman72    19       

Управление отделом разработки с помощью "1С:СППР" 53

Статья Программист Нет файла v8 Бесплатно (free) Управление проектом СППР

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

20.08.2018    10936    pau74    9