qtp 使用Oracle数据库做测试数据驱…

事件的场景:在测试过程中,我们可能用到数据库中一些初始的数据进行测试,所以我们就希望把数据按照我们的预先设计导入到一个excel里面,然后在后面的测试中引入进来,用于测试。

具体操作:

 

'创建excel的对象
Set ExcelObj = CreateObject("Excel.Application")
'指定一个execl的格式,这个需要我们事先定制好
aatype="F:\templet.xls"
'打开excel
ExcelObj.Workbooks.Open(aatype)
'设置操作的工作表
Set NewSheet = ExcelObj.Sheets.Item(2)
'以下是数据库操作

--------------------------------------------------------------------------------
Dim rs,sq,pkey
set conn=createobject("adodb.connection")
set  rs=createobject("adodb.recordset")
set  rs1=createobject("adodb.recordset")
conn.open= "Provider=OraOLEDB.Oracle.1;Password=*;Persist Security Info=True;User ID=*;SERVER=*;Data Source=*;DBQ=*;"
sql="select * from table"
rs.open sql,conn
i=1
do while not rs.eof
                     values1=rs("pkey")
                     values2=rs("name")
                     NewSheet.Cells(i+1,1).Value =values1
                     NewSheet.Cells(i+1,2).Value =values2
       i=i+1
         rs.movenext
Loop
'保存excel数据
ExcelObj.ActiveWorkbook.Saveas "F:\data.xls"
ExcelObj.Quit
Set ExcelObj = Nothing
rs.close
set rs=nothing
rs1.close
set rs1=nothing
conn.close
set conn=nothing
-------------------------------------------------------------------------------

这样的话,我们在别的脚本里面直接把excel的数据import进来就能使用了。

 

QTP 连接oracle数据库方法:

前提条件:

必须安装oracle客户端,安装完成后必须重启系统.

 

 代码如下:

'----------------------------------------------------
' Connect to oracle instance without tnsnames.ora
'----------------------------------------------------
Dim strCon: strCon = "Driver={Microsoft ODBC for Oracle}; " & _
                     "CONNECTSTRING=(DESCRIPTION=" & _
                     "(ADDRESS=(PROTOCOL=TCP)" & _
                     "(HOST=192.168.8.81)(PORT=1521))" & _
                     "(CONNECT_DATA=(SERVICE_NAME=xzfw))); uid=system;pwd=sa;"
                    
'Dim strCon: strCon = "Driver={Microsoft ODBC for Oracle}; " & _
'                     "CONNECTSTRING=CCMDBT; uid=;pwd=read;"

Dim oCon: Set oCon =CreateObject("ADODB.Connection")
Dim oRs: Set oRs = CreateObject("ADODB.Recordset")
oCon.Open strCon
Set oRs = oCon.Execute("select * from customer")
While Not oRs.EOF
    oRs.Fields(0).Value
    oRs.MoveNext
Wend
oCon.Close
Set oRs = Nothing
Set oCon = Nothing

 

你可能感兴趣的:(qtp 使用Oracle数据库做测试数据驱…)