|
在下接触QTP不深,正在学习中,在编写一个登录页面脚本时,遇到问题,请各位大虾不吝赐教
目的是将将登录用户名,密码,验证码(测试时改成万能验证码了)参数化后读取DATATABLE里的数据来登录,验证登录功能
以下代码不会报错,但是只能读取第一行的数据,想实现循环功能以读取所有数据来登录
Dim status '定义一个状态参数
Dim text
Dim innerText '定义弹出的窗口内容
Browser("网维通流量管理系统").Page("网维通流量管理系统").WebEdit("name").Set DataTable("UserName", dtLocalSheet)
Browser("网维通流量管理系统").Page("网维通流量管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
Browser("网维通流量管理系统").Page("网维通流量管理系统").WebEdit("code").Set DataTable("code", dtLocalSheet)
Browser("网维通流量管理系统").Page("网维通流量管理系统").Image("button").Click
status=DataTable("status",dtLocalSheet)
'成功登录
If status="" then
Reporter.ReportEvent micPass, "成功","登录成功"
Browser("网维通流量管理系统").Close
DataTable.GetSheet("login").SetNextRow '读取datatable中的下一个用户名和密码。
end if
'用户名或密码为空 (该种情况是win窗口弹出的提示信息)
if Browser("网维通流量管理系统").Dialog("Microsoft Internet Explorer").Exist then
text=Browser("网维通流量管理系统").Dialog("Microsoft Internet Explorer").Static("不能为空").GetROProperty("Text")
If text=status then
Reporter.ReportEvent micPass, "失败",text
DataTable.GetSheet("login").SetNextRow ' 读取datatable中的下一个用户名和密码。
else
Reporter.ReportEvent micFail,"异常","有错误"
end if
Browser("Browser").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Browser("网维通流量管理系统").Close
end if
'用户名或密码错误 (该情况是程序自己提示的信息)
if Browser("Browser").Page("page").Exist then
innertext=Browser("Browser").Page("page").WebElement("WebTable").GetROProperty("innerText")
if trim(innertext)=status then
Reporter.ReportEvent micPass, "失败",innertext
DataTable.GetSheet("login").SetNextRow ' 读取datatable中的下一个用户名和密码。
else
Reporter.ReportEvent micFail,"异常","有错误"
end if
Browser("Browser").Close
end if |
|