diff --git a/docs/web-test-guide.md b/docs/web-test-guide.md index 4aa0a09b..8d4e188e 100644 --- a/docs/web-test-guide.md +++ b/docs/web-test-guide.md @@ -124,10 +124,12 @@ Claude пишет `.js` файл со сценарием и запускает { "ok": true, "output": "...console.log output...", "elapsed": 12.3 } ``` -При ошибке — автоматический скриншот: +При ошибке — автоматический скриншот (пока модалка ещё видна) и стек вызова: ```json -{ "ok": false, "error": "Element not found", "screenshot": "error-shot.png" } +{ "ok": false, "error": "Тестовая проверка: запись запрещена", "screenshot": "error-shot.png", + "stack": { "raw": "...", "entries": [{"location": "Модуль(4)", "code": "ВызватьИсключение..."}] } } ``` +Стек извлекается автоматически — через OpenReport (платформенные исключения) или "О программе" → "Информация для техподдержки" (ВызватьИсключение). ### Интерактивный режим (start/exec/stop) @@ -225,6 +227,7 @@ await closeForm({ save: false }); - **reportSettings** — DCS-фильтры в читаемом виде: `[{ name: "Склад", enabled: true, value: "..." }]` - **errorModal** — 1С показала ошибку - **confirmation** — диалог Да/Нет, вызовите `clickElement('Да')` или `clickElement('Нет')` +- **platformDialogs** — `[{ type, title }]` — платформенные диалоги (О программе, Информация для техподдержки). Невидимы для обычного определения форм, но блокируют интерфейс. `closeForm()` закрывает их. Автоочистка через `dismissPendingErrors` перед каждым action #### readTable — подробнее