Вот куски кода, из которых я попытался вычистить все лишнее, оставив самую суть. В эту процедуру передается имя запускаемой обработки, в моем случае "Обработка.КОПВкладыРасход".
Процедура ЗапуститьОбработку(Имя)
Перем Список, Док;
Список = СоздатьОбъект("СписокЗначений");
Список.ДобавитьЗначение(0,); //1
Список.ДобавитьЗначение(Константа.КОПОперДень,); //2
// еще всякое разное передается
ОткрытьФормуМодально(Имя,Список);
Если Список.ПолучитьЗначение(1) = 1 Тогда //создаем операцию
Доки.Новый();
// тут разные обработки
КонецЕсли;
КонецПроцедуры
В ообработке "Обработка.КОПВкладыРасход" после того как пользователь заполнит пару полей и нажмет на кнопку "Выполнить", отрабатывается примерно следующий код:
Форма.Параметр.УстановитьЗначение(9, 0); //изменение резерва
Форма.Параметр.УстановитьЗначение(11, -ПроцКСнятию - Налог); //изменение процента
Форма.Параметр.УстановитьЗначение(1, 1);
Форма.Закрыть(0);
Т.е. запускается обработка "Обработка.КОПВкладыРасход", в форме которой пользователь должен заполнить пару полей, затем эта обработка совершает над данными обпределенную работу и закрывается, предварительно заполнив значения списка новыми данными . Моя исходная обработка обрабатывает то что получила, и вот в конце всей этой мути мне нужно протестировать правильно ли эти две обработки отработали.
Про контекст формы я думал, но в своем случае так и не додумал как передать его в тест.