Как определить что сеанс запущен в режиме менеджера тестирования?

1. VKislitsin 1021 26.02.23 23:20 Сейчас в теме +0.5 $m
Коллеги, что-то мне не удается ни самому сообразить, ни нагуглить.

Как программно определить что текущий сеанс запущен в режиме менеджера тестирования?

В зависимости от результата предполагается либо запускать новый сеанс с ключем /testmanager, либо открывать фреймворк тестирования в текущем сеансе.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
2. VKislitsin 1021 28.02.23 09:49 Сейчас в теме
Отвечу сам себе. На случай, если кому-то еще такое понадобится.

Нашел простой способ.

По информации из справки, объект ТестируемоеПриложение, предназначенный для связи с сеансом клиента тестирования, существует только в сеансе менеджера тестирования:

ТестируемоеПриложение (TestedApplication)
...
Объект доступен если исполняющее код приложение запущено с ключом командной строки /TESTMANAGER.


Таким образом, для того чтобы определить, что текущий сеанс - это менеджер тестирования, нужно попытаться инициализировать этот объект или проверить существование типа для объекта ТестируемоеПриложение.

Примерно таким образом:

&НаКлиенте
Функция ЭтоМенеджерТестирования()

   Результат = Неопределено;

   Попытка
       ИмяТипа = "ТестируемоеПриложение";
       Результат = Тип(ИмяТипа);
       //или
       //Результат = Вычислить("Тип(""ТестируемоеПриложение"")");
       //или
       //Результат = Вычислить("Новый ТестируемоеПриложение()");
   Исключение
   КонецПопытки;
   
   Возврат Результат <> Неопределено;
   
КонецФункции
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VKislitsin 1021 28.02.23 09:49 Сейчас в теме
Отвечу сам себе. На случай, если кому-то еще такое понадобится.

Нашел простой способ.

По информации из справки, объект ТестируемоеПриложение, предназначенный для связи с сеансом клиента тестирования, существует только в сеансе менеджера тестирования:

ТестируемоеПриложение (TestedApplication)
...
Объект доступен если исполняющее код приложение запущено с ключом командной строки /TESTMANAGER.


Таким образом, для того чтобы определить, что текущий сеанс - это менеджер тестирования, нужно попытаться инициализировать этот объект или проверить существование типа для объекта ТестируемоеПриложение.

Примерно таким образом:

&НаКлиенте
Функция ЭтоМенеджерТестирования()

   Результат = Неопределено;

   Попытка
       ИмяТипа = "ТестируемоеПриложение";
       Результат = Тип(ИмяТипа);
       //или
       //Результат = Вычислить("Тип(""ТестируемоеПриложение"")");
       //или
       //Результат = Вычислить("Новый ТестируемоеПриложение()");
   Исключение
   КонецПопытки;
   
   Возврат Результат <> Неопределено;
   
КонецФункции
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот