51Testing软件测试论坛

标题: 请问各位大大这个脚本写的什么。。。 [打印本页]

作者: wangyanting    时间: 2016-1-9 22:46
标题: 请问各位大大这个脚本写的什么。。。
'SystemUtil.Run "http://bbs.51testing.com/forum-69-1.html"
Browser("【新提醒】[QuickTest Professional]").Page("【新提醒】[QuickTest Professional]").Image("发新帖").Click
Browser("【新提醒】[QuickTest Professional]").Page("【新提醒】[QuickTest Professional]").Link("高级模式").Click
With Browser("【新提醒】[QuickTest Professional]").Page("【新提醒】发表帖子 - [QuickTest")
.WebElement("附加选项").Click
'step 1------------------------------------------------------------------------------------------------------->
'在获取一些属性的时候往往会多返回一个空格字符串,所以,在此
'建议有这样的意识保持这样的习惯,多加Trim,它的作用是去空格
'通过自身属性获取htmlon checkBox控件的自身接口属性disabled,返回True或者False
disabled1=trim(.WebCheckBox("htmlon").Object.disabled)
'获取自身接口属性checked,返回True或False
check1 = trim(.WebCheckBox("htmlon").Object.checked)
'通过GetROProperty方法来获取htmlon checkBox控件的自身接口属性disabled,返回True或者False
disabled2 = trim(.WebCheckBox("WebCheckBox").GetROProperty("disabled"))
check2 = trim(.WebCheckBox("WebCheckBox").GetROProperty("checked"))
' msgbox disabled1
' msgbox check1
' msgbox disabled2
' msgbox check2
    'check point start
'请注意业务逻辑
If disabled1="True" and disabled2="1" and check1="False" and check2="1"  Then
   Reporter.ReportEvent micPass,"step 1","通过"
else
   Reporter.ReportEvent micFail,"step 1","失败"
End If
End With
'step 2---------------------------------------------------------------------------------------------->
'预先设置一个值以作后用
Dim vTrue,vFalse
vTrue = "True"
vFalse ="False"
'使用自身接口去修改值,即修改webCheckBox的属性
'在这里只要基于checked这个属性做文章就能做到选择或者不选择
'设置为False代表不选择webCheckBox,即使已选择也会被反选
With Browser("【新提醒】[QuickTest Professional]").Page("【新提醒】发表帖子 - [QuickTest")
.WebCheckBox("allownoticeauthor").Object.checked=vFalse
   '获取自身接口属性checked用于验证,不再重复阐述
checkVal1 = trim(.WebCheckBox("allownoticeauthor").Object.checked)
.WebCheckBox("usesig").Set "OFF"
'获取自身接口属性checked用于验证,不再重复阐述
checkVal2 = trim(.WebCheckBox("usesig").Object.checked)
.WebCheckBox("WebCheckBox_2").Set "OFF"
'获取自身接口属性checked用于验证,不再重复阐述
checkVal3= trim(.WebCheckBox("WebCheckBox_2").Object.checked)
'check point start
' msgbox checkVal1 :msgbox checkVal2:msgbox checkVal3
If checkVal1=vFalse and checkVal2=vFalse and  checkVal3 = vFalse Then
  Reporter.ReportEvent micPass,"step 2","通过"
else
  Reporter.ReportEvent micFail,"step 2","失败"
End If

'step 3--------------------------------------------------------------------------------------------->
'属性设置为True,代表选择WebCheckBox
.WebCheckBox("allownoticeauthor").Object.checked = vTrue
checkVal4= trim(.WebCheckBox("allownoticeauthor").Object.checked)
'在前面使用的参数是OFF代表反选,那么ON代表勾选,
'另外这里的参数是不区分大小写
.WebCheckBox("usesig").Set "on"
checkVal5 = trim(.WebCheckBox("usesig").Object.checked)
msgBox checkVal4:msgBox checkVal5
' check point start
If checkVal4= vTrue and checkVal5= vTrue Then
  Reporter.ReportEvent micPass,"step 3","通过"
  else
  Reporter.ReportEvent micFail,"step 3","失败"
End If
End with



请问一下各位上面这段写的啥?有什么用?

作者: daviszhang    时间: 2016-1-10 20:49
打开页面:http://bbs.51testing.com/forum-69-1.html
在页面上找到“新发帖”的图像并点击
在页面上找到“高级模式”的链接并点击
在新弹出页面“发表帖子”里找到页面元素“附加选项”并点击。。。
‘ step1
获取webcheckbox :htmlon disabled属性, 赋值给disable1变量
获取webcheckbox :htmlon checked属性, 赋值给check变量
获取webcheckbox: checkbox disabled属性, 赋值给disabled2变量
获取webcheckbox: checkbox checked属性, 赋值给check2变量
判断: 若 所有变量值为1, 打印 step1通过,否则step失败
‘step 2
修改page.webcheckbox (allownoticeauthor). checked 属性=false
获取allnoticeauthor.check 的属性, 赋值给checkVal1,此处值为false
设置page. usesig.checked = off, 即 false
获取usesig.checked 属性,赋值给checkval2,值为false
同理,获取webcheckbox2.checked的值为false,赋给checkval3
判断: 若 checkval1,checkval2,checkval3 = false,step2通过,反之,失败
‘step3
checkbox:allownoticeauthor 设置成on,获取check值并赋予checkval4
checkbox: usesig 设置成on, 获取check值并赋予checkval5
msgbox弹出 checkval4值,弹出checkval5值
判断: 若checkval4,5 = true, step3通过,反之失败


作者: sterson    时间: 2016-1-11 08:48
其实这段脚本的注释已经写的很清楚了,你看不懂,可能是对QTP的函数不了解
可以参考下这个:http://www.51testing.com/index.p ... space-itemid-877413




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