0

我在 QTP (HP QuickTest Pro) 中有一个数据库检查点;如果我将静态查询传递给此检查点,则此检查点有效,但我需要能够传入参数或以编程方式构建查询。我也知道如何从 QTP 以编程方式查询数据库,但没有看到基于其结果创建检查点的方法。

具体来说,如果返回的 RecordCount = 0,我想导致 FAIL,如果 >= 1,我想导致 PASS。我是开发人员,而不是测试人员;并且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
4

1 回答 1

1

知道了。我给它静态查询并在评估之前对其进行更改。

strSQL= "select [...]"
DbTable("DbTable").SetTOProperty "Source", strSQL
DbTable("DbTable").Check CheckPoint("DbTable")
于 2009-02-09T23:04:56.453 回答