Vanessa Automation. Как начать создавать видеоинструкции

Публикация № 1448125 26.05.21

Инструментарий разработчика - DevOps - BDD/TDD-тестирование, Vanessa

Автоматические видеоинструкции на основе сценариев тестирования поражают воображение. Но многие сталкиваются с проблемами при попытке создать собственные фичи для видео. В ходе мастер класса на онлайн-митапе «DevOps в 1С» Светлана Попова рассмотрела особенности создания видеоинструкций с помощью Vanessa Automation для SikuliX и веб-клиента. И рассказала, какие подводные камни нужно учесть при их написании.

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

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

 

Зачем писать видеоинструкции

 

  • Во-первых, это стильно, модно, молодежно.

  • В наш век никто не хочет писать документацию – сейчас актуален тренд, что все хотят смотреть видео на YouTube. И в целом, Vanessa Automation предоставляет такую возможность – ваши сценарии для тестирования бизнес-процессов можно легко перевести в видео и показать пользователям.

  • Важная особенность – то, что автоматические видеоинструкции легко перезаписать. Если у вас меняется сценарий тестирования, добавляются новые реквизиты (какая-то галочка, включение которой нужно показать), вам не нужно самому перезаписывать это видео целиком – вы вставили шаги, запустили сценарий, и видео готово.

 

ПО для видеоинструкций

 

 

У меня есть проект на GitHub, в котором я собрала сценарии и настройки, которые я буду показывать в сегодняшнем докладе, чтобы вы могли скачать, посмотреть, попробовать.

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

  • Главная ссылка ведет на репозиторий Vanessa Automation. Вы можете скачать собранный фреймворк из релизов репозитория или, если хотите получить самые новые возможности, скачайте архив из ветки develop и с помощью compile.bat запустите сборку обработки. После обработки скрипта будет собрана обработка и все вспомогательные файлы.

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

  • Для работы с видеоинструкциями вам также понадобится OneScript – его нужно установить и указать путь к нему в переменную PATH.

  • ImageMagick – здесь указана ссылка, где можно скачать релизы. Необходимо, чтобы в названии пакета было указано dll – только в такой версии есть все нужные компоненты для видеоинструкций. При установке важно поставить галочки «Install FFmpeg» и «Install legacy utilities», чтобы были установлены утилиты ffmpeg и convert. Также при установке нужно поставить галочку «Add application directory to your system path», чтобы путь к ImageMagick прописался в переменную среды PATH.

  • Нужна VLC версии 2.1.5 или версии 3.0.2 и выше. Было несколько релизов VLC (2.2, 3.0.0 и 3.0.1), которые выдавали ошибку при записи видео – на них видеоинструкции работать не будут.

  • Для работы SikuliX нам понадобится Java. У меня стоит Liberika. Можно использовать любую. Необходимо прописать путь к Java в переменную среды PATH.

  • SikuliX для записи видеоинструкций должен быть именно версии 1.1. Версия 2.х не работает. Скачивается SikuliX в виде jar-файла. Для его установки нужно выполнить команду java -jar sikulixsetup-1.1.3.jar. При установке нужно поставить галочку для варианта использования Pack1 и дополнительно поставить галочку Python (Juthon) (default) – о том, что вы собираетесь использовать Python, как скриптовый язык. Дальше все по умолчанию.

 

 

  • Для озвучки текста нужно зарегистрироваться либо на Yandex Speech Kit, либо на Amazon Polly. Я использую Yandex Speech Kit – на мой взгляд, там самый лучший русский язык. Те голоса, которые предоставляет Amazon Polly, по-русски говорят с небольшим акцентом – это смотрится не очень хорошо. Зато у Amazon Polly большой выбор других языков. Они как раз с акцентами, которые отредактированы под этническую принадлежность говорящего, поэтому, если вы записываете видеоинструкцию для иностранных пользователей, лучше использовать Amazon Polly.

  • По сценариям, которые я буду показывать, я записала несколько видео на YouTube – ссылки на них также есть в репозитории на GitHub, вы можете посмотреть, что получилось.

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

 

Настройки Vanessa Automation

 

 

Давайте теперь перейдем непосредственно к настройкам.

На закладке Сервис в обработке Vanessa Automation мы:

  • устанавливаем флаг «Создавать видеоинструкцию»;

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

  • указываем каталог проекта;

  • часть настроек для видео можно заполнить, нажав кнопку «Загрузить настройки по умолчанию». После заполнения, настройки можно отредактировать – например, если у вас ImageMagick другой версии, укажите путь к нему;

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

 

 

Перейдем к вкладке «Страница аудио». Здесь мы как раз выбираем, какой вид озвучки мы будем использовать:

  • Microsoft

  • Yandex

  • Amazon Polly.

Как я уже говорила, я использую Yandex. У него есть триальный период два месяца, и потом совсем небольшая оплата за количество слов, которое вы озвучиваете – в целом получается не очень дорого.

Что здесь можно выбрать:

  • язык;

  • голос, которым будет идти озвучка – по умолчанию Vanessa Automation, если вы смотрели ролики на YouTube по работе с ней, говорит голосом Оксана (oksana);

  • эмоцию, с которой будет говорить голос;

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

  • также вам понадобится идентификатор каталога сайта Yandex Speech Kit и токен доступа к нему;

  • желательно установить флаг «Кэшировать файлы TTS» – кэш аудио даже более важен, чем кэш видео, чтобы не платить лишние деньги за синтез голоса, этот флаг лучше устанавливать;

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

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

 

 

Вот наш сценарий. Он предназначен для создания партнера в конфигурации «Управление торговлей 11» – мы создаем партнера и создаем к нему контрагента. Сценарий достаточно простой, чтобы видео не были очень длинные.

 

 

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

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

 

Видеоинструкции с использованием SikuliX

 

 

Давайте рассмотрим, как можно доработать сценарий. Перейдем на закладку «Дополнительно». Здесь есть дополнительные настройки:

  • можно отключить слайды с заголовком фичи;

  • отключить слайд со сценарием;

  • отключить финальный слайд;

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

  • чтобы переходы между шагами происходили достаточно быстро, в Vanessa Automation есть параметр «Процент ускорения» – у меня указано 70, чтобы было немного быстрее, но стандартно используется 30-40. Вы можете поэкспериментировать и найти скорость, на которой видеоинструкции будут смотреться лучше для пользователей.

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

 

 

Для подсвечивания кликов мыши и эмулирования ввода с клавиатуры в группе SikuliX server устанавливаем соответствующие настройки:

  • «Использовать SikuliX сервер»;

  • «Эмулировать движения мышки»;

  • также по кнопке «Установить сервисные утилиты» устанавливаются утилиты для работы SikuliX – для шагов по отрисовыванию рамок, стрелок, кликов мышки;

  • и еще нам нужно указать каталог скриптов SikuliX – справа есть кнопка, которая заполняет его по умолчанию;

  • указываем каталог для генерации картинок – SikuliX по тексту генерирует картинки (опять же, каталог с картинками, которые сгенерировал при создании фичи SikuliX, есть в репозитории на GitHub, в папке pictures);

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

 

 

В Vanessa Automation есть готовые шаги для использования SikuliX. Их можно посмотреть на закладке «Работа с UI» по кнопке «Добавить известный шаг» – в разделе «Прочее – SikuliX» находятся шаги, которые можно использовать для работы с SikuliX.

Давайте посмотрим, как эти шаги выглядят в сценарии.

 

 

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

Например, в этой фиче шаг видеовставки создания нового партнера у меня произносится голосом Филиппа с эмоцией good.

Для YandexTTS можно использовать:

  • расширенную настройку
    YandexTTS: voice = filipp; emotion =good

  • или сокращенную настройку
    YandexTTS: filipp, good

А для Amazon немного другая конструкция, потому что у него нет эмоции – можно выбрать либо голос, либо язык, которым будет произноситься шаг
@AmazonTTS: voice = maxim; lang = en-US

И еще здесь используется шаг «И видеовставка “…”», который выводит надпись на черном фоне и голос произносит указанный текст.

 

 

Также здесь есть шаги для SikuliX:

  • Есть шаг рисования рамки вокруг картинки («И я рисую рамку вокруг картинки») – опять же, SikuliX работает именно с картинками.

  • Шаг рисования стрелки от элемента до элемента (Затем я рисую стрелку от … до …). Опять же, можно использовать как текст, так и картинку – это есть в известных шагах.

  • И еще используется шаг «Затем клик на картинку “…”». Такой шаг удобно использовать вместо исходного шага с нажатием на кнопку, если цвет фона или цвет шрифта для кнопки не соответствуют стандартным, или, если на форме есть несколько кнопок с одинаковыми надписями. Например, здесь в шаге «Регистрация партнера» есть слово «Создать» в надписи и слово «Создать» на кнопке формы, и SikuliX по умолчанию кликает на надпись. Чтобы сценарий у нас не падал из-за того, что кнопка не была нажата, исходный шаг по нажатию заменяется на нажатие на картинку.

Обратите внимание, что по умолчанию Vanessa произносит слова с ударением на первый слог. Если нам нужно произнести слово с ударением на другой слог, мы вставляем перед ударной гласной символ «домика» – «^».

 

 

Давайте посмотрим, какая видеоинструкция у нас получилось, когда мы настроили сценарий для SikuliX. Здесь уже видно, как двигается мышка, обводятся рамкой элементы.

 

Видеоинструкции в браузере

 

Теперь давайте рассмотрим, как создать видеоинструкцию в браузере.

Видеоинструкции в браузере предоставляют больше возможностей. Они появились в Vanessa Automation не так давно, с релиза 1.2.029. Их создание стало возможно благодаря внешней компоненте VanessaExt – изначально она использовалась только для создания скриншотов, но потом ее функциональность расширилась, и она стала использоваться для создания видеоинструкций.

 

 

На закладке «Сервис» - «Основные» нам нужно установить флаг «Использовать компоненту VanessaExt».

 

 

И далее, на закладке «Автоинструкции» нужно:

  • установить «Использовать браузер + web socket», как раз VanessaExt посылает команду через web socket.

  • флаги «Эмулировать движение мышки» и «Эмулировать ввод с клавиатуры»;

  • и, желательно, включить флаг «Игнорировать ошибки поиска элементов в браузере».

 

 

Также на закладке «Настройки клиентов тестирования» обязательно нужно указать команду запуска браузера с ключом отладки (заполнится по нажатию на кнопку Chrome+Debug).

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

И очень важно не закрывать сессию клиента крестиком, иначе ID веб-клиента остается зарезервированным, и потом записи видеоинструкции не происходит.

Как вы уже поняли, у нас база должна быть опубликована на веб-сервере для того, чтобы запись инструкций в веб-клиенте в принципе работала.

 

 

Давайте посмотрим, какие шаги есть для видеоинструкций в браузере. Они находятся в группе «Прочее – Браузер». Здесь находятся шаги по активизации текущего окна, по отрисовке элементов, рамок, вокруг одного элемента, вокруг нескольких элементов.

 

 

Давайте посмотрим текст фичи, и я расскажу, какие есть особенности у шагов по работе в веб-браузере

  • Я добавила в Vanessa Automation шаг «И я активизирую текущее окно браузера». В чем было неудобство? В том, что по умолчанию, когда мы запускаем клиент тестирования, клавиатурный ввод остается на менеджере тестирования. И, соответственно, шаги по вводу текста в браузере не работают – после запуска воспроизведения необходимо было переключаться в браузер, нажимать там любое поле для того, чтобы клавиатурный ввод переключился на него. Теперь для этого можно использовать специальный шаг.

  • Специальные служебные шаги нужно комментировать комментариями специального вида (#[autodoc.ignorestep]), чтобы они не произносились в видеоинструкции, чтобы Vanessa Automation не говорила: «И я активизирую текущее окно браузера».

  • Очень полезный шаг «И я фиксирую группу с именем», который позволяет ограничить область поиска элементов на форме группой, в которой они находятся. Потому что на форме элементов может быть много, они могут быть скрыты и, пока ищется нужный элемент, происходит зависание. Чтобы этого не происходило, можно фиксировать группу. Есть шаги по фиксации группы как по имени, так и по наименованию. И по отмене фиксации группы, если это нужно. Следует отметить, что в новых версиях платформы проблема «зависания» решена, и скорость выполнения тестов в web-клиенте значительно выросла.

  • Очень красиво выглядит шаг по подсказке EnjoyHint.

  • Есть шаг по рисованию рамок вокруг нескольких элементов в браузере.

  • И шаг по рисованию стрелок. Здесь уже не так, как в SikuliX, стрелка рисуется не прямая. Управляя свойствами startSocketGravity и endSocketGravity, вы можете стрелку сделать изогнутой в разные стороны, добавить надпись вначале или в середине (свойство middleLabel).

Здесь открывается больше простора для творчества и для красоты.

 

 

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

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

Вот так вы можете создавать видеоинструкции.

P.S после доклада была обновлена справка по видеоинструкциям.

P.P.S на момент публикации доклада Sikulix уже практически не используется. Функциональность внешней компоненты VanessaExt значительно расширилась. Да и в проект Vanessa Automation за год добавлено много новых возможностей, например, работа с Git.

 

Вопросы

 

  • Можно ли написать одну фичу и потом как-то ее в разных конфигурациях запускать одну и ту же с минимальной параметризацией?

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

  • Как научиться писать фичи?

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

 

*************

Данная статья написана по итогам доклада (видео), прочитанного на онлайн-митапе "DevOps в 1С: Тестирование и контроль качества решений на 1С". Больше статей можно прочитать здесь.

Приглашаем всех 11-12 ноября принять участие в INFOSTART EVENT 2021 в Москве: //infostart.ru/events/1451228/

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Xershi 1266 26.05.21 22:32 Сейчас в теме
Основной затык в том что нужно использовать все функции.
А туда доступа нет.
Плюс наполнение отборов в формах с записи не работало.
Для простых сценариев подойдёт, но записать видео уйдёт такое же время, а то и меньше, если это сделать самому.
logarifm; +1 Ответить
2. logarifm 1101 27.05.21 08:58 Сейчас в теме
Проэкт интересен и потрачено много времени на это у ребят. Но для работы требует ооочень много дополнительного времни которого и так нет (да и клиенту это ненужно, все хотят сэкономить). Возможно мне не попадались еще проэкты бюджета 100005000 долларов, там безусловно можно транжирить все куда угодно.
dnikolaev; +1 Ответить
3. dnikolaev 165 27.05.21 10:54 Сейчас в теме
(2) Соглашусь. для разовых работ конечно даже не хочется разбираться.

Но вот для тиражных решений, мне кажется подойдет очень хорошо.
4. Pr-Mex 133 27.05.21 14:04 Сейчас в теме
5. Xershi 1266 27.05.21 14:16 Сейчас в теме
(4) 16 мая 2021 обновка, ну молодцы!
А с заполнением сложных отборов?
Учил как удалять дубли по контрагентам.
6. Pr-Mex 133 27.05.21 15:00 Сейчас в теме
(5) Напомните, пожалуйста, что такое "заполнение сложных отборов".
7. Xershi 1266 27.05.21 15:13 Сейчас в теме
(6) я зашел в обработку "Удаление дублей".
Там мне нужно в таблице отборов указать что и как я ищу.
Затем мне нужно еще по ссылке установить как будут дубли считаться.
Ну и после этого уже выполнение обработки.
Я конечно могу заранее зайти под пользователем и все проставить, а потом только пояснить что должен делать пользователь, но мне кажется это должно быть автоматом с записи, которую я делал в тестовом клиенте?
8. Pr-Mex 133 27.05.21 17:22 Сейчас в теме
(7) Эти действия должны также записываться.
9. Xershi 1266 28.05.21 16:36 Сейчас в теме
(8) год назад не получалось, при первой возможности опробую.
10. Terve!R 31.05.21 08:55 Сейчас в теме
Только для управляемых форм?
Давай досвидания... Может быть в следующей жизни)
triviumfan; +1 Ответить
Оставьте свое сообщение

См. также

Как быстро развернуть автоматическую линию проверки своего решения на 1С, затратив 8 часов и получив выигрыш в 1 человеко/месяц

DevOps SonarQube BDD/TDD-тестирование, Vanessa Бесплатно (free)

У разработчиков 1С уже есть все инструменты, позволяющие использовать современные инженерные практики в 1С. О том, как за 8 часов внедрить автоматические проверки для решений на 1С, снизить в них количество глупых ошибок, а также высвободить ресурсы на более интеллектуальную работу на INFOSTART MEETUP Ekaterinburg.Online рассказал Артур Аюханов.

05.04.2021    6369    artbear    16    

Практика применения DevOps. Тестирование

DevOps Сценарное тестирование BDD/TDD-тестирование, Vanessa СППР v8 1cv8.cf Бесплатно (free)

В третьей части мастер-класса «Практика применения DevOps» на конференции Infostart Event 2019 Inception выступила Светлана Попова. Она рассмотрела возможности использования двух инструментов тестирования от фирмы «1С» – «Сценарного тестирования» и связки СППР и Vanessa Automation, и рассказала про плюсы и минусы каждого из этих вариантов.

11.12.2020    5542    SvVik    0    

Тестирование серверного поведения с Vanessa Automation

BDD/TDD-тестирование, Vanessa v8 Бесплатно (free)

Обзор модуля "ИнициаторДанных" (версия VA 1.2.034), пример скрипта

14.09.2020    2704    unichkin    14    

Vanessa, видеоинструкции для web-клиента

BDD/TDD-тестирование, Vanessa v8 1cv8.cf Бесплатно (free)

Vanessa-Automation. Использование видеоинструкций в web-клиенте.

01.06.2020    3722    SvVik    3    

Визуализация фич Vanessa Automation в StoryMapper

Agile (XP, SCRUM, Канбан) Сценарное тестирование BDD/TDD-тестирование, Vanessa ИТ-компания 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

Описан процесс визуального упорядочивания коллекции feature-файлов в виде карты пользовательских историй. Используется инструмент гибкого управления требованиями StoryMapper.

21.03.2020    4152    oleynik.dv    7    

BDDSM-практики, или 50 оттенков желтого

Методология управления разработкой BDD/TDD-тестирование, Vanessa ИТ-компания 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

В статье описаны практические результаты применения методики BDDSM на отдельно взятом РЕАЛЬНОМ проекте поддержки.

26.12.2019    11184    Mistress_A    28    

Vanessa Automation + СППР

BDD/TDD-тестирование, Vanessa СППР v8 Бесплатно (free)

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

07.11.2019    16154    SvVik    15    

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

BDD/TDD-тестирование, Vanessa v8 1cv8.cf Бесплатно (free)

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

30.10.2019    11453    OPM    12    

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

BDD/TDD-тестирование, Vanessa v8 Бесплатно (free)

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

11.10.2019    14007    OPM    36    

Как стать контрибьютором Vanessa Automation?

BDD/TDD-тестирование, Vanessa Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Краткая инструкция о том, как помочь проекту VA

15.07.2019    7720    fenixnow    43    

Разработка и сценарное тестирование с Vanessa-ADD. Отчетность Allure. Автоматизация запуска сценариев

BDD/TDD-тестирование, Vanessa v8 Россия Бесплатно (free)

Формируем отчетность о результатах выполнения сценариев. Автоматизируем запуск.

26.02.2019    28740    Vladimir Litvinenko    28    

BDD в 1С

Математика и алгоритмы BDD/TDD-тестирование, Vanessa Бесплатно (free)

Я расскажу вам про магию BDD. Сначала будет немного теории, а потом я покажу, как это применимо к 1С на практике. BDD расшифровывается как Behavior Driven Development, разработка через поведение системы. Это означает, что мы выстраиваем весь наш процесс разработки, исходя из ожидаемого поведения.

30.08.2016    30072    Pr-Mex    19