Полный модуль создаёт три вымышленных товара, визуальные колонки и точный заголовок для безопасного поиска менеджером тестов.
Где и как запускать
Полный модуль формы отдельной тестируемой обработки. Событие ПриСозданииНаСервере назначается вручную. Этот урок запускается в клиенте, а не менеджере тестов.
Подготовка
Создайте собственную пустую учебную конфигурацию УчебнаяКонфигурацияСинтаксиса. Первый урок содержит полный модуль отдельной внешней обработки УчебнаяТаблицаТестирования; её данные только в памяти.
Запустите два отдельных тонких клиента собственной учебной базы: тестируемый с /TESTCLIENT -TPort15380, менеджер с /TESTMANAGER. Порт 15380 — собственный учебный; убедитесь, что на нём не работает другой клиент. Не подключайте менеджер к рабочей базе/чужому приложению.
В тестируемом клиенте вручную откройте собственную обработку из первого урока. В менеджере создайте другую внешнюю обработку с командой ВыполнитьПример; полный код одного теста вставьте в её модуль формы.
Перед каждым тестом закройте и заново откройте таблицу в тестируемом клиенте. Исходно в ней A-01/Книга/3, B-02/Ручка/1, C-00/Бумага/2, без ранее установленной сортировки и редактирования.
Каждый тест ищет точный учебный заголовок и таблицу ТаблицаТоваров внутри этой формы. Не заменяйте селекторы на * или первый найденный элемент рабочего приложения.
Это код штатного механизма тестирования 1С, не браузерная проверка HTML. В данном окружении выполнение UI-тестов в настоящей 1С не подтверждено.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ЭтаФорма.АвтоЗаголовок = Ложь;
ЭтаФорма.Заголовок = "Учебная таблица guide-owned-ui-2026";
НовыеРеквизиты = Новый Массив;
НовыеРеквизиты.Добавить(Новый РеквизитФормы("Товары", Новый ОписаниеТипов("ТаблицаЗначений")));
НовыеРеквизиты.Добавить(Новый РеквизитФормы("Код", Новый ОписаниеТипов("Строка"), "Товары", "Код"));
НовыеРеквизиты.Добавить(Новый РеквизитФормы("Наименование", Новый ОписаниеТипов("Строка"), "Товары", "Название"));
НовыеРеквизиты.Добавить(Новый РеквизитФормы("Количество", Новый ОписаниеТипов("Число",
Новый КвалификаторыЧисла(9, 0, ДопустимыйЗнак.Неотрицательный)), "Товары", "Количество"));
ЭтаФорма.ИзменитьРеквизиты(НовыеРеквизиты);
Данные = Новый ТаблицаЗначений;
Данные.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
Данные.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
Данные.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число",
Новый КвалификаторыЧисла(9, 0, ДопустимыйЗнак.Неотрицательный)));
СтрокаТовара = Данные.Добавить();
СтрокаТовара.Код = "A-01";
СтрокаТовара.Наименование = "Книга";
СтрокаТовара.Количество = 3;
СтрокаТовара = Данные.Добавить();
СтрокаТовара.Код = "B-02";
СтрокаТовара.Наименование = "Ручка";
СтрокаТовара.Количество = 1;
СтрокаТовара = Данные.Добавить();
СтрокаТовара.Код = "C-00";
СтрокаТовара.Наименование = "Бумага";
СтрокаТовара.Количество = 2;
ЭтаФорма.ЗначениеВРеквизитФормы(Данные, "Товары");
Таблица = ЭтаФорма.Элементы.Добавить("ТаблицаТоваров", Тип("ТаблицаФормы"));
Таблица.ПутьКДанным = "Товары";
Таблица.Заголовок = "Учебные товары";
Таблица.Шапка = Истина;
Таблица.АвтоВводНезаполненного = Ложь;
Таблица.АвтоВводНовойСтроки = Ложь;
Для Каждого ИмяКолонки Из СтрРазделить("Код,Наименование,Количество", ",") Цикл
Колонка = Элементы.Добавить("Товары" + ИмяКолонки, Тип("ПолеФормы"), Таблица);
Колонка.Вид = ВидПоляФормы.ПолеВвода;
Колонка.ПутьКДанным = "Товары." + ИмяКолонки;
Колонка.Заголовок = ИмяКолонки;
КонецЦикла;
Таблица.Подсказка = "Собственные данные: три строки, без записи базы";
Таблица.ТолькоПросмотр = Ложь;
Элементы.ТоварыКоличество.Формат = "ЧГ=0;ЧДЦ=0";
КонецПроцедурыРазбор по шагам
Создайте новую внешнюю обработку УчебнаяТаблицаТестирования с пустой основной управляемой формой. В событии ПриСозданииНаСервере назначьте указанную процедуру. Реквизиты/элементы Товары вручную не добавляйте.
Сначала проверяется имя собственной конфигурации, затем создаются реквизит ТаблицаЗначений и три колонки. Имя обработки само по себе не заменяет защиту от открытия в рабочей базе.
Порядок строк Книга, Ручка, Бумага специально не алфавитный. Количества целые: 3, 1, 2. Формат числового поля не показывает дробную часть.
Названия данных и элементов различаются: Товары — данные, ТаблицаТоваров — элемент, ТоварыКод/ТоварыНаименование/ТоварыКоличество — визуальные поля.
Тестируемые API ищут заголовки/имена интерфейса, не имена полей SQL. Точный заголовок формы служит собственным селектором, не гарантией безопасности любого приложения.
После закрытия и нового открытия данные создаются заново. Код не записывает товары, документы или пользовательские настройки.
Как проверить результат
Видны ровно три строки и заголовок Учебная таблица guide-owned-ui-2026.
При повторном открытии вновь исходные количества 3/1/2 и исходный порядок; при чужом имени конфигурации создание запрещено.
Ожидаемый результат
Подготовлена контролируемая собственная поверхность для реальных штатных UI-тестов 1С.
На что обратить внимание
Не заменяйте источник таблицы динамическим списком рабочих товаров: тогда тесты удаления/редактирования получили бы другой риск.
Наличие модуля ещё не подтверждает отображение и автоматизацию в вашей 1С; проверяйте запуск вручную.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.