Сценарии QTP могут выполняться, только если объекты присутствуют в репозитории объектов. Описания объектов создаются с использованием описательного программирования —
-
Когда тестировщики хотят выполнить операцию над объектом, которого нет в хранилище объектов
-
Когда объекты в приложении очень динамичны по своей природе.
-
Когда хранилище объектов становится большим, это приводит к снижению производительности при увеличении размера хранилища объектов.
-
Когда структура построена так, что было решено вообще не использовать Object Repository.
-
Когда тестировщики хотят выполнить действие над приложением во время выполнения, не зная об уникальных свойствах объекта.
Когда тестировщики хотят выполнить операцию над объектом, которого нет в хранилище объектов
Когда объекты в приложении очень динамичны по своей природе.
Когда хранилище объектов становится большим, это приводит к снижению производительности при увеличении размера хранилища объектов.
Когда структура построена так, что было решено вообще не использовать Object Repository.
Когда тестировщики хотят выполнить действие над приложением во время выполнения, не зная об уникальных свойствах объекта.
Синтаксис
Существует два способа написания сценариев с использованием техники описательного программирования. Они —
- Описание Объекты
- Описание Строки
Описание Объекты
Сценарий разрабатывается с использованием объектов описания, которые зависят от используемых свойств и их соответствующих значений. Затем эти описания используются для создания сценария.
'Creating a description object Set btncalc = Description.Create() 'Add descriptions and properties btncalc("type").value = "Button" btncalc("name").value = "calculate" btncalc("html tag").value = "INPUT" ' Use the same to script it Browser("Math Calc").Page("Num Calculator").WebButton(btncalc).Click
Описание Строки
Описание объектов разрабатывается с использованием свойств и значений в виде строк, как показано ниже.
Browser("Math Calc").Page("Num Calculator").WebButton("html tag:=INPUT","type:=Button","name:=calculate").Click
Дочерние объекты
QTP предоставляет метод ChildObjects, который позволяет нам создавать коллекцию объектов. Родительские объекты предшествуют ChildObjects.
Dim oDesc Set oDesc = Description.Create oDesc("micclass").value = "Link" 'Find all the Links Set obj = Browser("Math Calc").Page("Math Calc").ChildObjects(oDesc) Dim i 'obj.Count value has the number of links in the page For i = 0 to obj.Count - 1 'get the name of all the links in the page x = obj(i).GetROProperty("innerhtml") print x Next
Порядковые идентификаторы
Описательное программирование используется для написания сценария на основе порядковых идентификаторов, что позволит QTP воздействовать на эти объекты, когда два или более объектов имеют одинаковые свойства.