2.2. Запись и воспроизведение скрипта

Назад: 2.1 Создание первого проекта, выбор языка программирования Содержание Дальше: 2.3 Использование Браузера Объектов

Работая с TestComplete вы можете создавать скрипты двумя способами: автоматическая запись скрипта средствами TestComplete и ручное написание. Кроме того, можно комбинировать эти два метода. С одной стороны, автоматическая запись скрипта легче, чем написание вручную. Однако при помощи автоматической записи возможно создать лишь простые скрипты, что не всегда является достаточным.

Давайте попробуем записать скрипт в автоматическом режиме и посмотрим, что из этого получится.

Прежде всего необходимо определиться, действия в каком приложении мы будем записывать. В поставке TestComplete есть много приложений, на которых можно потренироваться (они находятся в папке “C:\Program Files\Automated QA\TestComplete X\Samples”; здесь X – это версия TestComplete). Однако приложения, идущие в поставке, необходимо скомпилировать, поэтому для первого знакомства мы ограничимся программой Notepad (Блокнот), идущей в стандартной поставке Windows. Для запуска Блокнота нажмите Пуск – Выполнить, и в открывшемся окне в поле ввода впишите notepad.exe и нажмите ОК.

Для начала записи необходимо выбрать пункт меню Script – Record, или нажать соответствующую кнопку (с изображением красного кружочка) на панели инструментов Test Engine. При этом TestComplete перейдет в режим записи и свернется, на экране в правом верхнем углу появится индикатор (значок TestComplete с подписью Recording), а также панель инструментов Recording.

Далее произведем в Блокноте следующие действия:

  • Напишем строку “Test string”, затем нажмем Enter и введем текст “Second string”
  • Выберем пункт меню Правка – Выделить все, затем Правка – Удалить, затем Правка – отменить
  • Щелкнем правой кнопкой мыши по тексту и из контекстного меню выберем пункт “Копировать”

После всего этого нажмем на панели Recording кнопку Stop (с изображением синего квадрата) для остановки записи скрипта и посмотрим на текст скрипта, который сгенерировал для нас TestComplete:

function Test1()
{
  var  w1;
  var  w2;
  w1 = Sys.Process(“notepad”).Window(“Notepad”, “*”);
  w2 = w1.Window(“Edit”);
  w2.Click(20, 12);
  w2.Keys(“Test string[Enter]Second string”);
  w1.MainMenu.Click(“Edit|Select All”);
  w1.MainMenu.Click(“Edit|Delete”);
  w1.MainMenu.Click(“Edit|Undo”);
  w2.ClickR(19, 15);
  w2.PopupMenu.Click(“Copy”);
}

Сначала объявляются две переменные w1 и w2. Далее переменной w1 присваивается значение Sys.Process(“notepad”).Window(“Notepad”, “*”) – это собственно окно Блокнота, а переменной w2 значение w1.Window(“Edit”) – это текстовое поле, в которое мы вводим текст. Далее следует вызов метода Click() в поле ввода (w2) – это щелчок левой кнопкой мыши для активации этого поля. Затем трижды вызывается метод Click() для трех пунктов главного меню Правка – Выделить все, Правка – Удалить и Правка – Отменить. И, наконец, щелчок правой кнопкой мыши ClickR() и выбор пункта контекстного меню Копировать с помощью метода Click() для объекта PopupMenu.

Примечание: в TestComplete версии 7 и выше имена новых переменных более осмысленные и похожи на имена окон, что более удобно при работе с записанным скриптом.

Теперь обратим внимание на объявление главного окна Блокнота. Оно состоит из трех частей:

  1. Sys – это глобальный объект, через который вы получает доступ к системе. Например, через этот объект можно получить доступ к объектам OLE (Object Linking and Embedding, Sys.OleObject), к буферу обмена (Sys.Clipboard), информации об операционной системе (Sys.OSInfo), а также ко всем процессам, работающим в данный момент.
  2. Для доступа к процессам используется метод Process(), в качестве параметра которому передается имя процесса (в нашем случае это “notepad”).
  3. Собственно главное окно Блокнота Window(“Notepad”, “*”). Первый параметр этого метода – это класс окна, второй параметр – его заголовок. Звездочка в имени класса или заголовке служит заменой для любой последовательности символов. В нашем случае это говорит о том, что в заголовке окна Блокнота может быть абсолютно любой текст. Мы можем заменить его на заголовок вида “*Блокнот”. Это будет указывать на то, что заголовок окна может начинаться с любой последовательности символов, однако заканчиваться должен обязательно словом “Блокнот”.

Для запуска записанного скрипта необходимо щелкнуть правой кнопкой мыши на записанной функции и выбрать из выпадающего меню пункт Run Current Routine. При этом TestComplete запустит функцию, которая повторит все записанные действия.

В следующей главе мы более подробно рассмотрим работу с объектом Sys и процессами.

Работая с TestComplete вы можете создавать скрипты двумя способами: автоматическая запись скрипта средствами TestComplete и ручное написание. Кроме того, можно комбинировать эти два метода. С одной стороны, автоматическая запись скрипта легче, чем написание вручную. Однако при помощи автоматической записи возможно создать лишь простые скрипты, что не всегда является достаточным.

Давайте попробуем записать скрипт в автоматическом режиме и посмотрим, что из этого получится.

Прежде всего необходимо определиться, действия в каком приложении мы будем записывать. В поставке TestComplete есть много приложений, на которых можно потренироваться (они находятся в папке “C:\Program Files\Automated QA\TestComplete X\Samples”; здесь X – это версия TestComplete). Однако приложения, идущие в поставке, необходимо скомпилировать, поэтому для первого знакомства мы ограничимся программой Notepad (Блокнот), идущей в стандартной поставке Windows. Для запуска Блокнота нажмите Пуск – Выполнить, и в открывшемся окне в поле ввода впишите notepad.exe и нажмите ОК.

Для начала записи необходимо выбрать пункт меню ScriptRecord, или нажать соответствующую кнопку (с изображением красного кружочка) на панели инструментов Test Engine. При этом TestComplete перейдет в режим записи и свернется, на экране в правом верхнем углу появится индикатор (значок TestComplete с подписью Recording), а также панель инструментов Recording.

 

Далее произведем в Блокноте следующие действия:

- Напишем строку “Test string“, затем нажмем Enter и введем текст “Second string

- Выберем пункт меню Правка – Выделить все, затем Правка – Удалить, затем Правка – отменить

- Щелкнем правой кнопкой мыши по тексту и из контекстного меню выберем пункт “Копировать”

 

После всего этого нажмем на панели Recording кнопку Stop (с изображением синего квадрата) для остановки записи скрипта и посмотрим на текст скрипта, который сгенерировал для нас TestComplete:

 

function Test1()

{

  var  w1;

  var  w2;

  w1 = Sys.Process(“notepad”).Window(“Notepad”, “*”);

  w2 = w1.Window(“Edit”);

  w2.Click(20, 12);

  w2.Keys(“Test string[Enter]Second string”);

  w1.MainMenu.Click(“Edit|Select All”);

  w1.MainMenu.Click(“Edit|Delete”);

  w1.MainMenu.Click(“Edit|Undo”);

  w2.ClickR(19, 15);

  w2.PopupMenu.Click(“Copy”);

}

Сначала объявляются две переменные w1 и w2. Далее переменной w1 присваивается значение Sys.Process(“notepad“).Window(“Notepad“, “*”) – это собственно окно Блокнота, а переменной w2 значение w1.Window(“Edit“) – это текстовое поле, в которое мы вводим текст. Далее следует вызов метода Click() в поле ввода (w2) – это щелчок левой кнопкой мыши для активации этого поля. Затем трижды вызывается метод Click() для трех пунктов главного меню Правка – Выделить все, Правка – Удалить и Правка – Отменить. И, наконец, щелчок правой кнопкой мыши ClickR() и выбор пункта контекстного меню Копировать с помощью метода Click() для объекта PopupMenu.

 

Примечание: в TestComplete версии 7 и выше имена новых переменных более осмысленные и похожи на имена окон, что более удобно при работе с записанным скриптом.

 

Теперь обратим внимание на объявление главного окна Блокнота. Оно состоит из трех частей:

1) Sys – это глобальный объект, через который вы получает доступ к системе. Например, через этот объект можно получить доступ к объектам OLE (Object Linking and Embedding, Sys.OleObject), к буферу обмена (Sys.Clipboard), информации об операционной системе (Sys.OSInfo), а также ко всем процессам, работающим в данный момент.

2) Для доступа к процессам используется метод Process(), в качестве параметра которому передается имя процесса (в нашем случае это “notepad“).

3) Собственно главное окно Блокнота Window(“Notepad“, “*”). Первый параметр этого метода – это класс окна, второй параметр – его заголовок. Звездочка в имени класса или заголовке служит заменой для любой последовательности символов. В нашем случае это говорит о том, что в заголовке окна Блокнота может быть абсолютно любой текст. Мы можем заменить его на заголовок вида “*Блокнот”. Это будет указывать на то, что заголовок окна может начинаться с любой последовательности символов, однако заканчиваться должен обязательно словом “Блокнот”.

 

Для запуска записанного скрипта необходимо щелкнуть правой кнопкой мыши на записанной функции и выбрать из выпадающего меню пункт Run Current Routine. При этом TestComplete запустит функцию, которая повторит все записанные действия.

 

В следующей главе мы более подробно рассмотрим работу с объектом Sys и процессами.

Назад: 2.1 Создание первого проекта, выбор языка программирования Содержание Дальше: 2.3 Использование Браузера Объектов