Есть в программных продуктах 1С такая персональная настройка «Запрашивать подтверждение при завершении программы». Если настройка установлена, то при закрытии программы появляется диалоговое окно с просьбой подтвердить действие. В общем, беспокоится - осознано вы закрываете программу или уснули на клавиатуре, сверяя показатели баланса и финансового результата.
Настройка установлена по умолчанию и многие пользователи даже не знают, что это настраиваемая функция и приникают ее как естественное поведение программы.
Но при пакетном режиме тестирования, когда приходится работать с информационными базами: загружать, обновлять, выгружать, открывать и закрывать, такой диалог при закрытии программы только мешает.
И тут надо отметить, что на данный момент пакетный шаг «Закрыть тестируемое приложение» не умеет обрабатывать данный диалог.
Как обойти?
Все зависит от момента управления данной настройкой.
Заранее. Подготовительный момент
Если тестирование происходит на заранее подготовленной информационной базе, в которой заведены все необходимые данные под автоматизированные тесты, то управление настройкой осуществляется на уровне подготовки данной информационной базы. Отключили ее и она больше не беспокоит.
По ходу работы в информационной базе. Эксплуатационный момент
Если процесс проверки подразумевает вначале создание информационной базы, например, создание базы из шаблонов конфигурации, то управление отключением настройки осуществляется по ходу работы в информационной базе. И здесь вариаций может быть несколько.
1. Можно написать сценарий тестирования, который будет устанавливать значение данной настройки через форму: переход по навигационной ссылке на форму «Персональные настройки» (Мои настройки) и снятие флага у настройки. Единственное, данный вариант не подойдет для тех случаев, когда информационная база запускается под пользователем с ограниченными правами и вообще нет возможности запустить данную базу под другим пользователем с полными правами.
2. Можно создать шаг «Процедура на встроенном языке» и программно установить значение данной настройки:
Настройки = Новый Структура;
Настройки.Вставить("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", Ложь);
ОбщегоНазначения.СохранитьПерсональныеНастройки(Настройки);
3. А можно написать сценарий тестирования из одного шага «Закрыть клиента тестирования». Причем данный шаг сценария в отличие от своего собрата из пакета тестирования умеет обрабатывать диалоговые окна.
У шага «Закрыть клиента тестирования» есть несколько действий:
- Нажать кнопку закрытия клиентского окна и разорвать соединение
- Только нажать кнопку закрытия клиентского окна
- Нажать кнопку закрытия клиентского окна и разорвать соединение
Для действия «Только разорвать соединение с тестируемым приложением» будет разорвана связь с открытым клиентом тестирования, но сама база, открытая как клиент тестирования закрыта не будет.
Для действия «Только нажать кнопку закрытия клиентского окна» будет закрыт клиент тестирования с обработкой по умолчанию диалога настройки «Запрашивать подтверждение при завершении программы». Т.е. данному действию без разницы уставлена данная настройка или нет.
Для действия «Нажать кнопку закрытия клиентского окна и разорвать соединение» соответственно будет закрыт клиент тестирования и связь с ним разорвана. И для данного действия по умолчанию обрабатывается диалог настройки «Запрашивать подтверждение при завершении программы».
Но можно не обрабатывать автоматически диалог, установив настройку «Отрабатывать диалог вручную». При ее включении придется обработать окно диалога другими шагами сценария тестирования.
Есть еще вариант, когда можно загрузить значения настроек и другие тестовые данные из файлов или другой информационной базы. Правда, это уже история другого инструмента автоматизированного тестирования...