TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
QA в 1C — все о тестировании в мире 1С

31 Aug 2025, 09:43

Открыть в Telegram Поделиться Пожаловаться

🤔 [#ВопросОтвет] Как в экспортный сценарий передавать многострочную строку в качестве параметра?

Вопрос: Как в экспортный сценарий передавать многострочные параметры, как это сделано в библиотечном шаге "И я выполняю код встроенного языка"? Там я код указываю сразу после шага, обрамляя тремя двойными кавычками и могу использовать переносы строк. Во встроенной справке Ванессы есть пример, но у меня его повторить не получается.


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

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

Самый универсальный шаг — шаг установки значения переменной И Я запоминаю в переменную "ИмяПеременной" значение "ЗначениеПеременной".

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

И Я вывожу многострочное приветствие
"""
Привет, Мир!
Hello, World!
"""

Реализация этого шага должна быть такой:

📔 Экспорт.Приветствие.feature

#language: ru

@tree
@ExportScenarios

Функционал: Экспорт. Приветствие

Сценарий: Я вывожу многострочное приветствие
И Я запоминаю в переменную "ТекстПриветствия" значение
"""
Приветствие по умолчанию
"""
И я вывожу сообщение в менеджер тестирования "$ТекстПриветствия$"

Как вы видите, в названии сценария у нас нет никаких параметров.

Вместо этого у нас в первой строке сценария в шаге И я запоминаю в переменную ... в переменную сохраняется многострочная строка со значением "Приветствие по умолчанию".

Когда мы вызываем наш шаг, как написано в примере выше, то VA подменяет эту многострочную строку на ту, которую мы передаем (с приветствиями на русском и английском).

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

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

Это была еженедельная рубрика #ВопросОтвет. Присылайте вопросы по теме тестирования в комментариях к постам или в личные сообщения и я постараюсь на них ответить.
🦋 @QA_1C

987 2 1 11
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot