QTP-설명 프로그래밍

QTP 스크립트는 개체가 개체 저장소에있는 경우에만 실행할 수 있습니다. 객체의 설명은 설명 프로그래밍을 사용하여 생성됩니다-

  • 테스터가 개체 저장소에없는 개체에 대해 작업을 수행하려는 경우

  • 응용 프로그램의 개체가 본질적으로 매우 동적 일 때.

  • Object Repository가 커지면 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 메서드를 제공합니다. 부모 개체는 ChildObject보다 우선합니다.

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가 해당 개체에 대해 작동 할 수 있도록합니다.

' Using Location
Dim Obj
Set Obj = Browser("title:=.*google.*").Page("micclass:=Page")
Obj.WebEdit("name:=Test","location:=0").Set "ABC"
Obj.WebEdit("name:=Test","location:=1").Set "123"
 
' Index
Obj.WebEdit("name:=Test","index:=0").Set "1123"
Obj.WebEdit("name:=Test","index:=1").Set "2222"
 
' Creation Time
Browser("creationtime:=0").Sync
Browser("creationtime:=1").Sync
Browser("creationtime:=2").Sync