문제

QTP (HP QuickTest Pro)에 데이터베이스 체크 포인트가 있습니다. 이 체크 포인트는 정적 쿼리를 전달하면 작동하지만 매개 변수를 전달하거나 쿼리를 프로그래밍 방식으로 빌드 할 수 있어야합니다. 또한 QTP에서 데이터베이스를 프로그래밍 방식으로 쿼리하는 방법을 알고 있지만 결과를 기반으로 체크 포인트를 만들 수있는 방법은 보이지 않습니다.

구체적으로, 반환 된 recordCount = 0이면 실패를 일으키고> = 1을 통과하고 싶습니다. 나는 테스터가 아닌 개발자입니다. 그리고 QTP 포럼 응답하지 않습니다 - 도와주세요!

이것은 내가 시도한 코드입니다. 작동하지만 검사 점이 없습니다.

Dim con, rs,strSQL, Param1, Param2
Param1 = DataTable("B", dtGlobalSheet)
Param2 = DataTable("A", dtGlobalSheet)
Set con=Createobject("ADODB.Connection")
Set rs=Createobject("ADODB.recordset")
rs.CursorLocation = 3
rs.CursorType =3
connSTR= "Driver={SQL Server};Server=vsql0001;Database=DB0001;Dsn=myRegistryName"
con.open connSTR
strSQL= "select Field1, Field2 from dbo.Table1 where Field1 in (select Field1 from     dbo.Table2 where Param2 like '%"+Param2+"%' and active = 1) and (Field2     = '"+Param1+"' or Field2 like '"+Param1+" %' or Field2 like '%*"+Param1+"' or Field2     like '%*"+Param1+"*%')"
rs.open strSQL, con
msgbox rs.recordcount   ' want the CP to go here
rs.close
con.close
도움이 되었습니까?

해결책

알았어요. 정적 쿼리를 제공하고 평가하기 전에 변경합니다.

strSQL= "select [...]"
DbTable("DbTable").SetTOProperty "Source", strSQL
DbTable("DbTable").Check CheckPoint("DbTable")
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top