19.3. Настройки проекта

Назад: 19.2 Настройка параметров TestComplete Содержание Дальше: 20 Тестирование мобильных приложений

Теперь поговорим о наиболее интересных настройках проекта. Чтобы увидеть настройки проекта в TestComplete, необходимо щелкнуть правой кнопкой мыши на имени проекта в дереве слева и выбрать пункт меню Edit – Properties.

 
 
При этом в правой части окна TestComplete отобразится панель с деревом различных настроек.

General

Object Tree Model – модель дерева объектов (Tree или Flat). В зависимости от того, какую модель вы выберите, по-разному будет представлена иерархия объектов в Object Browser-е. Подробнее оо объектных моделях можно узнать из главы 3.1 Выбор модели объектов
Log location – папка, в которой хранятся логии запусков скриптов
Character encoding – кодировка. используемая в модулях TestComplete. Рекомендуется оставить значение Auto (при этом используется кодировка UTF-8).

Object Mapping

На этой страничке вы можете ассоциировать нестандартные элементы управления со стандартными. Например, если в вашем приложении есть текстовые поля, которые TestComplete определяет как неизвестный объект, можно ассоциировать класс этого объекта с наиболее подходящим текстовым полем и TestComplete будет знать, как с ним работать. Подробнее о процессе создания ассоциаций элементов управления можно прочитать в главе 11.9 Ассоциации объектов (mapping)

Open Applications – General

Use native objects names for TestComplete objects names – если эта опция включена, TestComplete генерирует имена объектов, используя их внутренние имена, т.е. имена, которые используются в самом приложении. Иначе TestComplete будет генерировать имена по имени класса и индексу элемента. Рекомендуется оставить эту опцию включенной.

Open Applications – Debug Agents

Debug информация приложения с одной стороны дает больше возможностей для доступа к внутренним свойствам и методам приложения, а с другой стороны – замедляет работу TestComplete с приложением. Включайте или отключайте чтение Debug информации в зависимости от того, используете ли вы ее в вашем тестируемом приложении или нет.

Open Applications – MSAA

Open Applications – UI Automation

MSAA – это технология, позволяющая сторонним приложениям получать информацию о внутреннем устройстве приложения. Если в вашем приложении используется технология MSAA, это даст вам больше возможностей при работе с ним. В частности технология MSAA используется во всех приложениях Microsoft (например, MS Office). Для того, чтобы включить поддержку MSAA для какого-либо элемента управления, необходимо добавить имя его класса в раздел Open Applications – MSAA.

То же самое касается технологии UI Automation, которая используется в приложениях, написанных с использованием .NET 3.0 и выше.
В качестве примера приведем приложение MS Outlook. В левой части окна Outlook есть дерево с папками.

  

При использовании настроек по умолчанию этот элемент управления будет распознаваться TestComplete-ом так:

 
 
Однако если добавить в список MSAA класс NetUIHWND, как показано на рисунке ниже

  

то мы сразу же получим доступ ко внутренним элементам управления этой панели:

  

Open Applications – Web Testing

Tree Model – здесь устанавливается модель дерева объектов для веб-приложений. Подробнее о доступных моделях можно прочитать в главе 4.1 Функциональное тестирование Web-приложений
Identification attribute – атрибут, по которому TestComplete будет доступаться к элементам веб-приложений. Name более понятен и удобен, ID более универсален.
Tested host и Record tested host as – позволяют автоматически заменить при записи имя или часть имени сервера другим значением. Это может быть удобно в том случае, если скрипты записываются на одном компьютере, а воспроизводятся на другом, и при этом на разных компьютерах тестируемые веб-страницы находятся в разных местах (например, в разных папках). Тогда можно в поле Tested host ввести значение, которое будет заменяться (например, “http://localhost”), а в поле Record tested host as ввести имя переменной, которое будет подставляться вместо значения в поле Tested host (например, “Project.Variables.MyPath”).
Make page object a child of the browser process – позволяет сделать объекты Page непосредственными потомками процесса браузера, что упрощает доступ к страницам, удаляя один “лишний” элемент в иерархии (или даже несколько элементов). Например, при отключенной опции Make page object… доступ к странице будет выглядеть так:
Sys.Process(“firefox”).Window(“MozillaUIWindowClass”, “Mozilla Firefox”, 1).Window(“MozillaWindowClass”, “”, 4).Page(“about:blank”)
а при включенной опции так:
Sys.Process(“firefox”).Page(“about:blank”)
Ignore dynamic URL parameters – очень часто при работе с веб-приложениями в адресной строке передаются динамические параметры, т.е. такие параметры, которые меняются каждый раз для новой сессии. При записи скриптов TestComplete может заменять значения таких параметров на символ групповой замены (*), чтобы в дальнейшем не пришлось вручную модифицировать скрипты. Для этого достаточно лишь добавить имена параметров в список Dynamic parameters.

Playback

В этом разделе находятся параметры, влияющие на воспроизведение скриптов.

Stop on error, Stop on warning – остановить выполнение скриптов при возникновении ошибки или предупреждения
Minimize TestComplete – сворачивать окно TestComplete во время выполнения скриптов
Disable mouse – отключает мышь на время выполнения скриптов, тем самым сводя к минимуму возможность вмешательства пользователя. Полезно при использовании Low-level процедур
Auto-wait timeout – время ожидания элементов управления. В случае, когда время появление элементов управления сильно варьируется, рекомендуется использовать функции Wait (подробнее смотри главу 3.5 Синхронизация выполнения скриптов)
Delay between events – время задержки между событиями (клик мышки, ввод текста и т.п.). Увеличение этого параметра приводит к замедлению времени выполнения скриптов
Key pressing delay – интервал между нажатиями клавиш при использовании метода Keys. Увеличение этого параметра также приводит к замедлению выполнения скриптов, однако иногда его приходится увеличивать целенаправленно, если при вводе текста вводятся не все символы
Dragging delay – задержка при перетаскивании объектов (если быть точнее, то за сколько миллисекунд курсор мыши передвинется на 20 пикселей). Не рекомендуется ставить здесь слишком маленькое значение, иначе некоторые программы могут “не заметить” перетаскивания
Mouse movement delay – задержка при движении мыши. Если нет необходимости замедлять выполнение скриптов, это значение лучше установить равным нулю
On unexpected window
В этой группе указывается последовательность действий, которые предпримет TestComplete в случае появления непредвиденного окна. Ignore unexpected window – игнорировать окно, Stop execution – остановить выполнение скриптов, Click on focused control – кликнуть на элементе управления в окне, на котором установлен фокус (обычно это кнопка по умолчанию, закрывающая окно), Press Esc/Enter – нажать Esc/Enter, Send WM_CLOSE – отправить окну сообщение WM_CLOSE (команда закрытия окна).

Кроме того, можно написать свой обработчик непредвиденных окон (см. главу 11.8 Перехват событий). Еще один пример работы с появляющимися окнами можно найти здесь.

Ignore overlapping window – игнорировать перекрывающие окна
Post image on error – включите эту опцию, если хотите чтобы каждый раз при возникновении ошибки в лог помещался скриншот экрана
Save log every … minutes – позволяет сохранять лог с определенной периодичностью. Во время работы скриптов TestComplete формирует лог, который хранится в памяти. Рекомендуется время от времени сохранять лог, чтобы в случае критической ошибки (например, TestComplete выполнит недопустимую операцию и закроется или выключится питание) потерялись не все логии, а лишь их небольшая часть.

Свойства проекта по умолчанию

В TestComplete есть возможность настроить параметры по умолчанию, которые будут задаваться при создании нового проекта (Object Tree Model, месторасположение лога, ассоциации объектов, и т.п. – практически все параметры, которые меняются на панели параметров проекта).

Для изменения параметров проекта по умолчанию выберите пункт меню Tools – Default Project Properties и в открывшемся окне Default Project Properties укажите настройки, которые вы хотите иметь для каждого нового проекта.

  
Кроме того, в окне Options (Tools – Options) в разделе General – Project можно указать язык, который будет использоваться по умолчанию при создании нового проекта (Default language), папку для размещения проектов (Default project folder) и действие при открытии TestComplete (At startup) – открыть последний проект, открыть стартовую страницу или не открывать ничего.

Назад: 19.2 Настройка параметров TestComplete Содержание Дальше: 20 Тестирование мобильных приложений