Vanessa Automation, или как начать писать свои тесты за 5 минут

21.08.21

Разработка - Тестирование QA

Статья рассчитана на новичков, которые либо вообще не писали тесты, либо только начинают или хотят их написать. Читай далее - будет интересно!

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Тестирование форм справочников и документов
.feature 2,93Kb
38
38 Скачать (1 SM) Купить за 1 850 руб.

Вступление

Для начала хочу рассказать о своем опыте работы с инструментом «Vanessa Automation».

«Vanessa Automation» - для программиста это набор обработок, как хороший пример аналог «Инструменты разработчика», который представляет собой фреймворк для тестирования конфигурации с множеством дополнительных опций. Для пользователей это инструмент на языке Gherkin, синтаксис его работы немного отличается от 1С, что в начале доставляет неудобства, но мы научимся с этим справляться.

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

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

Подготовка

  1. Для начала нам понадобится сам инструмент «Vanessa Automation». На момент выхода статьи это версия 1.2.036.28. Заходим на github и скачиваем нужную версию файла « vanessa-automation.zip». Архив скачайте на ПК, где вы будете запускать клиент 1С и распакуйте. Также появилось расширение, если у вас база во фреше, оно будет удобнее, но я им еще не пользовался.
  2. После распаковки архива, запускаете 1С (у меня версия 8.3.19.1150) с параметром «/TESTMANAGER» как на картинке (толстый клиент, чтобы больше кода можно было писать на клиенте)
     
     Настройки запуска клиента 1С
  3. Открываем обработку по пути куда был распакован архив …\vanessa-automation\ vanessa-automation.epf
     
    Интерфейс запуска обработки
  4. Переходим на вкладку «Клиенты тестирования» и жмем на кнопку «Подключить выбранного клиента тестирования» как показано на картинке. Должен запустить сеанс для выполнения разработанных сценариев.
     
    Интерфейс настройки клиентов тестирования

Запуск сценария

Теперь нам нужно запустить сценарий как на скриншоте и тестирование начнется.

 
Готовый сценарий тестирования

Как видите, на весь запуск должно уйти минут 5. Теперь вы можете сами протестировать конфигурацию на ошибки.
Из особенностей синтаксиса:
1. Справка находится в «Библиотека шагов»

2. Работа с переменными идет через структуру «Контекст» доступную на клиенте. Если нужно записать данные на сервере и передать на клиент, придется сделать доработку. Именно по этой причине был запущен толстый клиент. Сами переменные записанные в структуру «Контекст» могут быть доступны через «$ИмяПеременной$».
3. Работа с циклами и условиями выполняется после указанной команды и ключевой момент должна быть сделана табуляция.

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

Успехов в работе и успешных тестов!

См. также

DevOps и автоматизация разработки Тестирование QA Программист Пользователь Платформа 1С v8.3 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Автотесты 1С - готовые тестовые сценарии, предназначенные для регресс-тестирования функционала конфигурации после обновления типовым релизом. Сценарии проверяют интерактивное заполнение форм документов, справочников и результат проведения документов. Сценарий – feature-файл, разработанный с помощью vanessa-automation. Запуск сценария выполняется интерактивно с помощью vanessa-automation или с помощью vanessa-runner в CI-системах. Доступно тестирование тонкого клиента. Поддерживаемые версии конфигураций 1С:Зарплата и Управление Персоналом 3 и версии КОРП: 3.1.30.57.

2160 руб.

05.08.2024    1275    12    1    

7

Тестирование QA DevOps и автоматизация разработки Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Налоговый учет Платные (руб)

Готовые тестовые сценарии, предназначенные для регресс-тестирования функционала конфигурации после обновления типовым релизом. Сценарии проверяют интерактивное заполнение форм документов, справочников и результат проведения документов. Сценарии возможно использовать как для vanessa-automation, так и для СППР. Поддерживаемые версии конфигураций ERP2 и КА2: 2.5.17.113.

2400 руб.

04.07.2022    8366    38    1    

29

Тестирование QA DevOps и автоматизация разработки Программист Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет Платные (руб)

Автотесты 1С - готовые тестовые сценарии, предназначенные для регресс-тестирования функционала конфигурации после обновления типовым релизом. Сценарии проверяют интерактивное заполнение форм документов, справочников и результат проведения документов. Сценарий – feature-файл, разработанный с помощью vanessa-automation. Запуск сценария выполняется интерактивно с помощью vanessa-automation или с помощью vanessa-runner в CI-системах. Доступно тестирование тонкого клиента. Поддерживаемые версии конфигураций 1С:Бухгалтерия предприятие 3.0 и версии КОРП: 3.0.156.30.

1800 руб.

20.01.2022    7782    19    0    

13

Облачные сервисы, хостинг Linux Тестирование QA Сервера Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

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

31.10.2024    1307    capitan    0    

0

Журнал регистрации Тестирование QA Программист Бесплатно (free)

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

21.10.2024    2775    leemuar    8    

22

Тестирование QA Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

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

30.08.2024    1288    Scorpion4eg    6    

7

Тестирование QA Программист Платформа 1С v8.3 Бесплатно (free)

Иногда возникают ситуации, когда надо развернуть тестовую базу клиента / свою на серверах Windows или Linux. Тестовые базы могут понадобиться в разных ситуациях: у клиента ошибка, на нашей базе она не воспроизводится, реализуем новый функционал и хотелось бы протестировать на Linux и т.д. А теперь представим, что это все на потоке. Что тестовых баз 1С не одна, а 20-30. И получаем проблему, что непонятно, занята она сейчас кем-то или нет. Предлагаю вариант решения этой проблемы.

28.06.2024    1509    Diversus    12    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 7229 21.08.21 01:08 Сейчас в теме
Мне всегда было интересно, почему подобные прогоняющие тесты обработки не позволяют перезапустить сеанс с нужным параметром (/TESTMANAGER) для работы в качестве менеджера тестирования. Кажется это довольно просто реализуется.
3. Xershi 1555 21.08.21 08:26 Сейчас в теме
(1) попробуйте это с авторами в гите обсудить. Думаю что так и есть.
Решение как я понимаю свободно распространяется и можно самим это доработать и сделать обще доступным.
2. CheBurator 2712 21.08.21 01:25 Сейчас в теме
"фреймворк для тестирования конфигурации"
- что именно можно "тестировать в конфигурации"..?
- для каких тестирований применение инструмента невозможно/сложно..?
4. Xershi 1555 21.08.21 08:27 Сейчас в теме
(2) я не автор решения. Я только показал как можно это использовать в своих целях. На гите авторам эти вопросы задайте.
5. DitriX 2101 22.08.21 20:35 Сейчас в теме
(2)
Вы записываете скрипт действия, пользователя. Типо как макрос в экселе. И потом воспроизводите его.
Тестировать можно почти все, кроме html полей, там это сложно немного делается.
А в целом, задача - чтобы программа работала так как задумана, а не просто - чтобы работала, или вообще не работала.
6. CheBurator 2712 22.08.21 21:44 Сейчас в теме
(5) погано.. если от первого диалога с пользователем до последнего порядка 100 возможных сценариев.. то записывать это все, проходя вручную... это значит что на каждом экране с пользователем я должен записать все возможные сценарии - ввода неправильных данных и реакции на них. действия при недостаточности данных итд. если это сделать один раз - ну ладно, можно найти ресурс на это. но если я где-то внесу в середине цепочки изменение-разветвление - то мне завново нужно будет переписать кучу сценариев...
7. DitriX 2101 22.08.21 22:46 Сейчас в теме
(6) не совсем так, смотря какую цель вы ставите.
Например, можно генерировать автодокументации и видеоинструкции по этим сценариям.
И если вы всеравно их пишете, то вынуждены будете их обновлять, и иногда на столько, что все скриншоты надо будет переделывать. А тут все автоматом и всегда актуально.

С другой стороны - вы донакликиваете только новую часть, зачем вам все с нуля перекликивать?
На счет ввода не правильных данных - тут да. Но тут все же не стоит путать юнит тесты и сценарии. Ввод даных всеже должны контролировать именно юнит тесты.
8. CheBurator 2712 23.08.21 08:53 Сейчас в теме
А сценариями на ванессе мы что обрабатываем/проверяем тогда?
9. wtlz 273 23.08.21 09:17 Сейчас в теме
На скриншотах тестируется только открытие форм справочников и документов - логичнее для этой цели было бы использовать дымовое тестирование, тем более что оно уже есть в vanessa.
10. Xershi 1555 23.08.21 09:33 Сейчас в теме
(9) скиньте ссылку или сделайте статью как это делать.
В этот код легко добавить регистры и все остальные метаданные.
Всю конфу там также за 5 минут можно протестировать?
Цель статьи показать, как развернуть ванессу и написать простейший тест, который будет полезен каждому кто начинает их делать.
Ну и шпаргалка, когда раз в год это делаешь.
11. wtlz 273 23.08.21 09:49 Сейчас в теме
(10) Да, можно за 5 минут протестировать и отчет в визуальной форме вывести.
Ванесса всё же в данном контексте больше для сценарного теста (я как ... хочу чтобы ...)

https://www.youtube.com/watch?v=VDKYh99Pur0

https://github.com/vanessa-opensource/add/blob/develop/tests/smoke/readme.md
12. Xershi 1555 23.08.21 10:06 Сейчас в теме
(11) по видео вообще не понятно в чем он сидит, как он это запускает. А здесь все просто и ясно.
Запустили обработку, написали код похожий на 1С и результат аналогичный, плюс уже свою логику можно делать. Что и должно послужить толчком данная статья.
13. wtlz 273 23.08.21 10:37 Сейчас в теме
(12) на видео VS Code - рекомендую к ознакомлению и использованию, как минимум для редактирования тех же feature файлов.
Если подходить по логике - "написали код похожий на 1С", так можно и просто внешнюю обработку написать еще быстрее)
Я хотел сказать про то, что инструменты нужно использовать по назначению, ведь можно и гвозди микроскопом забивать :)
Насчет статьи - действительно, на ИС по этому поводу доступного гайда нету - нужно внимательно читать readme или на канале видео из коммента выше просмотреть видео начиная с первого.

В любом случае, если данная методика позволяет повысить качество вашего кода - здорово.
Lapitskiy; artbear; +2 Ответить
14. Xershi 1555 23.08.21 10:47 Сейчас в теме
(13) ну для тех кто этим каждый день занимается возможно и стоит ознакомиться.
Мне же нужно было максимально понятно и удобно сделать конкретную задачу с чем как видите успешно и справился. А разбираться в неизвестном продукте? Это сколько времени уйдет заказчик скорее откажется от тестирования.
15. ovcharenko.di 95 23.08.21 11:31 Сейчас в теме
от вашей статьи у незнакомого с этим инструментом специалиста может сложиться ОЧЕНЬ обманчивое впечатление.

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

Я ставлю минус за введение людей в заблуждение
Apo; ixijixi; betflop; wtlz; artbear; +5 Ответить
16. Xershi 1555 23.08.21 11:39 Сейчас в теме
(15) никакого заблуждения нет. Клиентский язык в публикации озвучен, а вот обращение к данным 1С уже на родном языке.
А что такое "стандартный"? Вот стандартная задача открыть конфу и потыкать формы. Я это всегда пользователям говорил делать, после обновлений. А какой должен сценарий рассматриваться для того кто продуктом ни разу не пользовался?
Как по мне после этого все элементарно становится. Клиентский язык довольно примитивный, если нужно самостоятельно допиливается. Остальное уже кодом 1С легко получается.
Сами обработки кодом 1С и пишутся.
Вы статью дочитали до конца? За 5 минут смогли развернуть о чем шла речь?
citisoft; +1 Ответить
19. user1157812 23.08.21 14:51 Сейчас в теме
(16) Типовой сценарий для меня - накликать мышкой действия пользователя и запускать после обновления. Это действительно очень удобно и быстро.
Именно так и начал использовать ванессу для 2 разных программ.
24. citisoft 24.08.21 11:56 Сейчас в теме
(16)Спасибо тебе, дружище, норм статья. Пость дальше, пожалуйста, по этой теме. Чем проще и короче, тем лучше )
26. Xershi 1555 24.08.21 12:01 Сейчас в теме
(24) будут заказы на эту тему, выпущу конечно, тема интересная. Заодно и качество кода подтянем и ручного тестирования будет меньше!
citisoft; +1 Ответить
23. citisoft 24.08.21 11:54 Сейчас в теме
(15) Заблудившийся, своё напиши сначала по теме, а потом минусуй.
25. Xershi 1555 24.08.21 12:00 Сейчас в теме
(23) до сих пор не ответил в чем конкретно у него проблема.
17. AvalonE2008 101 23.08.21 12:35 Сейчас в теме
А в чем плюс по сравнению с решением фирмы 1С - Сценарное тестирование?
18. Xershi 1555 23.08.21 13:04 Сейчас в теме
(17) не в курсе. Сделайте статью или киньте ссылку, люди разберутся.
Мне зашло именно это решение.
21. Serg O. 297 23.08.21 17:28 Сейчас в теме
(17) 1С - Сценарное тестирование вроде бы платное...
а тут open-sorce то есть бесплатно...
22. Xershi 1555 23.08.21 18:31 Сейчас в теме
(21) проверил в ИТС не входит, горит серым, значит только после покупки.
35. Светлый ум 415 29.09.21 08:06 Сейчас в теме
(17) Плюс в том что бесплатный и свободно распространяемый, ну и примеров много. А так "сценарное тестирование" для регрессивны тестов больше подходит.
20. Serg O. 297 23.08.21 17:26 Сейчас в теме
на сколько я помню, вроде Ванесса - работала и с обычными формами тоже
а в обычных формах .... параметр «/TESTMANAGER» не работает
в этом и есть самый большой плюс
27. ixijixi 1913 24.08.21 12:49 Сейчас в теме
Статья должна называться "Как установить Vanessa Automation", а не "Как начать писать свои тесты за 5 минут". Ибо про написание тестов упомянуто примерно ни разу. Тоже минусанул.
Hogyoku; Apo; 0x00; +3 Ответить
28. Xershi 1555 24.08.21 12:55 Сейчас в теме
(27) вы статью до конца дочитали? Чтобы написать тест, нужно установить Vanessa Automation. Сам тест уже написан, его нужно переписать или скачать. Кстати именно по это причине картинка, чтобы вы тест набрали руками и вот тут уже и тренировка писать тест!
Чтобы начать писать свой тест, нужно почитать справку, как это сделать я расписал.
Чистая выжимка без воды!
Это не статья как писать свои тесты, а как начать их писать! Поэтому категорически не согласен!
29. poyson 24.08.21 14:58 Сейчас в теме
какая классная статья! все просто и понятно. никакой лишней воды....
30. Xershi 1555 24.08.21 15:54 Сейчас в теме
(29) у вас что-то не получилось?
31. poyson 24.08.21 18:03 Сейчас в теме
(30)нет. все срослось идеально. и за 5 минут.....
32. Xershi 1555 24.08.21 18:12 Сейчас в теме
(31) до этого тесты не писали?
33. poyson 25.08.21 09:54 Сейчас в теме
(32)в ванесса нет. пробовал стандартными механизмами 1с. результат 50/50. не понял ничего. Плюнул. Надеюсь тут получится.
34. Xershi 1555 25.08.21 10:47 Сейчас в теме
(33) в (15) написали, что по такой статье ничего не получится. Сами попробовали другой тест написать, получилось?
А в (27), что написать тест вообще нельзя.
Какое ваше мнение?
36. sdemon72 29 10.06.22 10:51 Сейчас в теме
Отличная статья из разряда "Как освоить за 5 минут". В других описаниях, что удалось нагуглить, много воды и ненужных подробностей. Вкупе с описанием генератора дымовых тестов - вполне достаточно, чтоб начать пользоваться. Добавил себе в избранное, автору респект!
Оставьте свое сообщение