2009-02-09 4 views
0

У меня есть контрольная точка базы данных в QTP (HP QuickTest Pro); эта контрольная точка работает, если я передаю ей статический запрос, но мне нужно иметь возможность передавать параметры или строить запрос программно. Я также знаю, как запрограммировать базу данных программно из QTP, но не вижу способа создать контрольную точку на основе ее результатов.QTP: Параметрирование контрольной точки базы данных

В частности, я хочу вызвать FAIL, если возвращаемый RecordCount = 0 и PASS if> = 1. Я разработчик, а не тестер; и QTP forums не отвечают - помогите мне!

Это код, который я попробовал - который работает, но не хватает Checkpoint:

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 

ответ

1

Понял. Я даю ему статический запрос и изменяю его до его оценки.

strSQL= "select [...]" 
DbTable("DbTable").SetTOProperty "Source", strSQL 
DbTable("DbTable").Check CheckPoint("DbTable") 
Смежные вопросы