1C Skills: веб-публикация базы и smoke-тест через Playwright

Как опубликовать тестовую базу 1С через Apache и проверить веб-клиент с помощью web-publish, web-test и Playwright.

Article

После изменения формы мало проверить XML и сборку. Сценарий может сломаться только в веб-клиенте: команда не видна, поле недоступно или форма открывается с ошибкой. В 1C Skills публикация и браузерная проверка разделены на web-publish и web-test.

Подготовка контура

На Windows backend управляет portable Apache и использует wsap24.dll. На Linux нужен системный Apache 2 и официальный wsap24.so той же версии и архитектуры, что платформа. IIS сейчас не поддерживается.

python3 <skills-root>/web-publish/scripts/web-publish.py   -InfoBasePath <test-infobase-path> -AppName demo1c

После выполнения web-info должен показать работающий Apache и приложение. Не публикуйте рабочую базу ради автоматического теста.

Сценарий smoke-теста

web-test использует Playwright и Chromium:

npm ci
npx playwright install chromium

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

Опубликуй тестовую базу как demo1c, открой веб-клиент, создай контрагента с уникальным ИНН, сохрани скриншот и удали публикацию после теста.

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

Диагностика падения

Отделите уровни: работает ли Apache, открывается ли URL, проходит ли вход, находится ли элемент формы. Скриншот и trace Playwright показывают, сломалась публикация или изменился интерфейс.

После теста используйте web-unpublish; web-stop нужен только если тестовый Apache больше не используется. Автоматическая уборка важна не меньше запуска: оставленная публикация расширяет поверхность доступа.

Статьи по теме