Rss订阅IQuickTest(关于如何订阅?)
作者:zzxxbb112
时间:2010/6/18 版权所有,侵权必究。
出处:http://blog.csdn.net/zzxxbb112
很久没更新了,最近事情实在是太多,这两天稍微空点,终于能挤出时间来更新了,今天要讲的是自定义过程校验,内容比较特别,正常情况我们都知道,自定义报告的话我们可以直接使用Report对象,而当我们在使用验证点时经常会用到Checkproperty,执行它之后QTP会自动在report里生成一条验证结果。以上的我就不说了,相信大家一定都非常精通了。今天主要是讲一下怎么结合验证点在QTPreport中输出HTML格式的结果。
废话不说,上例子:
上图就是我们需要实现的最终结果。来看一下脚本的实现:
1. 报告生成函数(过度函数)
注意:这里的GetTOProperty("testObjName")是一个隐藏属性,可以获取QTP对象库里的对象的LOGICNAME.
'######################### 报告生成 ########################### private Function HReport(ExpectedValue,ActualValue,testStatus,nodename) Set oEventDesc = CreateObject("Scripting.Dictionary") '添加状态 oEventDesc("Status") = micFail '添加是否过滤 oEventDesc("EnableFilter") = False '添加节点名称 oEventDesc("NodeName") = nodename '添加HTML结果 oEventDesc("StepHtmlInfo") = "<TABLE border='1'>" & _ "<TR><TD>Actual Value</TD><TD>"+ExpectedValue+"</TD></TR>" & _ "<TR><TD>Expected Value</TD><TD>"+ActualValue+"</TD></TR>" & _ "<TR><TD>Checkpoint Status</TD><TD style='background-color:red'><b>Failed</b></TD></TR>" & _ "</TABLE>" '判断状态 If testStatus Then oEventDesc("Status") = micPass oEventDesc("StepHtmlInfo") = Replace(oEventDesc("StepHtmlInfo"),_ "<TD style='background-color:red'><b>Failed</b></TD>","<TD style='background-color:green'><b>Passed</b></TD>") End If '生成报告 newEventContext = Reporter.LogEvent ("Replay",oEventDesc,Reporter.GetContext) '释放资源 Set oEventDesc = nothing End Function
2. 验证函数 - 调用第一个报告生成函数自动判断成功与失败
'########################### 自定义过程校验 ########################## Function ValidateProperty (Object, PropertyName, ExpectedValue) '判断预期是否与实际值相等 If Object.GetROProperty(PropertyName) = ExpectedValue Then '成功 HReport ExpectedValue,Object.GetROProperty(PropertyName),true,_ "check "+Object.GetTOProperty("testObjName")+"<"+PropertyName+">属性" ValidateProperty = True Exit Function Else ' 失败 HReport ExpectedValue,Object.GetROProperty(PropertyName),false,_ "check "+Object.GetTOProperty("testObjName")+"<"+PropertyName+">属性" ValidateProperty = False Exit Function End If End Function
这里的验证函数使用了测试对象的抽离技术。调用时可以直接把对象传入.
把以上两个函数都存放在函数库中,然后直接调用验证函数(函数2)即可
set oWebEdit = Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("搜索框") ValidateProperty oWebEdit,"name","wd" ValidateProperty oWebEdit,"name","wd1"
结果1: wd 验证成功,如图:
结果2: wd1 验证失败,如图:
如有任何问题请去IquickTest Q&A问题库进行提问