TGViewer
QA в 1C — все о тестировании в мире 1С QA в 1C — все о тестировании в мире 1С @qa_1c · 670 subscribers
Post #58 800
QA в 1C — все о тестировании в мире 1С Если коротко
На этом можно было бы закончить, но я попробую объяснить и обратить внимание на важные особенности таблиц в TurboGherkin, понимание которых поможет работать с таблицами правильно. Теперь будет длинно.

✔️ Таблица геркин, которая создается в самом сценарии — это не то же самое, что таблица, созданная в секции «Переменные». Далее я таблицу геркин, объявленную в сценарии буду называть «обычной», а таблицу, объявленную в секции «Переменные» — «таблицей переменных» (я бы предпочел называть ее «именованной таблицей переменных», но это слишком длинно). Далее вы узнаете почему именно «таблица переменных»).

✔️ Оба вида таблиц в ТурбоГеркин — это не ТаблицаЗначений из языка 1С! Тестировщики с опытом разработки на встроенном языке 1С, часто ассоциируют таблицу геркин с объектом-коллекцией ТаблицаЗначений. Но на самом деле под капотом это не она. И более того, оба вида таблиц реализованы в текущей версии VA по-разному (см. ниже), и это главная причина, почему с ними приходится работать по-разному (и из-за чего возник вопрос).

✔️ Обычная таблица геркин под капотом представляется в виде объекта Массив. То есть это индексированная коллекция, к элементам которой можно обращаться по индексу (от нуля до количества строк минус один). Элементами этой коллекции являются объекты с типом Структура, каждая структура содержит данные одной строки, значения ячеек которой хранятся в виде пары "КолN" => "Значение колонки N", где N - порядковый номер колонки таблицы:

Сценарий: Работа с обычной таблицей геркин
И Я запоминаю в переменную "ОбычнаяТаблица" значение
| "Язык" | "Приветствие на этом языке" |
| "Русский" | "Привет, Мир!" |
| "Английский" | "Hello, World" |

И Я запоминаю значение выражения 'Контекст.ОбычнаяТаблица[1].Кол1' в переменную "Язык"
И Я запоминаю значение выражения 'Контекст.ОбычнаяТаблица[1].Кол2' в переменную "Приветствие"

И я вывожу сообщение в менеджер тестирования 'Приветствие на языке $Язык$: $Приветствие$'

// Выведет: "Приветствие на языке Русский: Привет, Мир!"


✔️ Таблица переменных — это Структура. В ней строки проиндексированы не числами, а ключами, в качестве которых используются значения самой первой колонки. Благодаря этому вы можете получить данные строки, обратившись к конкретной строке по имени, «разыменовывая» через точку (поэтому я и называю этот вид таблиц «таблицей переменных»), сравните с предыдущим примером:

#language: ru
@tree

Функционал: Таблицы в TurboGherkin

Переменные:

* Приветствия
| "Язык" | "Приветствие" |
| "Русский" | "Привет, Мир!" |
| "Английский" | "Hello, World" |

Сценарий: Работа с таблицей переменных

// Обращаюсь по ключу строки, ключ - значение первой по порядку колонки:
И я вывожу сообщение в менеджер тестирования "Приветствия.Русский.Приветствие"
// Выведет "Привет, Мир!"

// А что, если нам надо вывести значение из самой первой колонки?
И я вывожу сообщение в менеджер тестирования "Приветствия.Русский.Язык"
// Выведет "Русский"


✔️ Значения первой колонки и первой строки таблицы переменных — идентификаторы. В отличие от обычной таблицы, у таблицы переменных есть жесткое требование к значениям ячеек первой строки и ячеек первой колонки. Они должны быть правильными ключами Структуры и к ним предъявляются такие же требования, как к именам переменных во встроенном языке 1С: они должны состоять только из букв, цифр и символа подчеркивания, должны начинаться только с буквы или символа подчеркивания. В примерах выше таблицы переменных были правильные, а вот при попытке объявить таблицу в секции Переменные вот так, как ниже приведет к ошибке Ошибка при вызове метода контекста (Вставить): Задано неправильное имя атрибута структуры:

Функционал: Таблицы в TurboGherkin

Переменные:

* Приветствия
| "Язык" | "Приветствие на этом языке" |
| "Русский" | "Привет, Мир!" |
| "Английский" | "Hello, World" |

Сценарий: Работа с таблицей переменных

// ...


На вопросы и батхёрт )) отвечу в комментариях. А еще приходите изучать VA ко мне на курс.

🦋 @QA_1C
  • 🤯 4
  • 🔥 3
  • 👍 1
  • 🤝 1
More from @qa_1c
  1. Sep 10, 2026# Опубликован релиз 1.2.043.42 # Описание изменений в релизе тут. ### AI * MCP: подключени…
  2. Aug 31, 2026📝 На Инфостарте опубликовали мои ответы на вопросы по итогам вебинара про создание автоте…
  3. Aug 21, 2026🎥 Как создавать и проверять сценарии 1С с помощью AI Вчера прошёл наш вебинар с Александр…
  4. Aug 12, 2026Может ли AI написать автотест для 1С: демонстрация Vanessa Automation Vanessa Automation –…
  5. Jun 19, 2026🎙 Продолжаем знакомить вас с модераторами INFOSTART TECH EVENT 2026 и их докладами Алекса…
  6. May 22, 2026Как запустить Vanessa Automation MCP (быстрый старт) По настройке/запуску там все просто:…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →