51Testing软件测试论坛

标题: 在qtp中从数据库导入到datatable中数据应用到参数化时为什么每次都是最后一条 [打印本页]

作者: df_85110400    时间: 2009-5-20 13:49
标题: 在qtp中从数据库导入到datatable中数据应用到参数化时为什么每次都是最后一条
在qtp中从数据库导入到datatable中数据应用到参数化时为什么每次都是最后一条
Dim Cnn
Dim Rst
Dim strCnn
Dim mylink
strCnn="rovider=OraOLEDB.Oracle.1;Data Source=ORCL10_10.10.0.12assword=lanpayuser;User ID=lanpayuserersist Security Info=True;"'链接数据库方法
Set Cnn = CreateObject("ADODB.Connection")
Cnn.Open strCnn
Set Rst =CreateObject("ADODB.Recordset")
Rst.open "select user_email from user_info where  user_id_number='652301198509275237'", Cnn
i=1
While not rst.eof
dim1=Rst("user_email").value
DataTable.GlobalSheet.SetCurrentRow(i)
DataTable("user_email","Global")=dim1
  Rst.movenext   
i=i+1

wend   
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅").WebEdit("usn").Set DataTable("user_email", Global)
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅").WebEdit("pwd").SetSecure "4a1374dc1b4da15c07012c77310cc4660927"
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅").Link("点击").Click
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅_2").WebEdit("inputCode").Set "1314"
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅_2").WebCheckBox("secure").Set "OFF"
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅_2").WebButton("登陆").Click
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Page("LanPay瑞宝支付|安全 简单 快捷 顺畅_3").Sync
Browser("LanPay瑞宝支付|安全 简单 快捷 顺畅").Close
作者: hk_ella    时间: 2009-5-20 14:24
while结束之后,DataTable页面的指针被你用DataTable.GlobalSheet.SetCurrentRow(i)语句指向了最后一行
所以你后面用DataTable("user_email", Global)语句获取参数时获取到的值当然是最后一行的值
如果你想获取指定行的值,则需在获取之前设用DataTable.GlobalSheet.SetCurrentRow(指定行)指定一下即可
作者: df_85110400    时间: 2009-5-20 17:03
我指定了以后在使用时为什么取不到值??
作者: xavier_007    时间: 2009-5-20 17:35
debug下阿
作者: hk_ella    时间: 2009-5-26 17:22
把你的代码贴出来看看吧
另外调试时最好的方法就是楼上仁兄说的debug,你在变量那一栏看一下各个参数是否正确,这样很快就知道问题出在哪里了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2