自定义测试报告的方法
上一篇 / 下一篇 2008-08-25 19:56:28 / 个人分类:qtp
1208328177
- 自动化测试:
- 测试文档:
自定义测试报告的方法
测试过程,QTP自带的报告内容非常多,也许大部分都不是你想要的。51Testing软件测试网 q5p {hOei
51Testing软件测试网^ NAgN![C
此时你,可以写一个自定义写报告的函数:51Testing软件测试网`9U,p?Os*n*W
#QT$b[ PM*dA lQU0'**********向QTP报告中写入自定义信息**************** 51Testing软件测试网["M]wIR
Public function writeRpt(byval EventStatus,byval ReportStepName,byval Details)
u0y1?el7yt |0'EventStatus是报告状态 0为micPass;1为micFail;2为micDone;3为micWarning。
!q"|&jtuS+oKUw0'ReportStepName是报告中预期步骤的名称(对象名)。51Testing软件测试网/X;]9y[I"_zjQ)i5C
'报告事件的描述。该字符串将在报告的步骤详细信息框架中显示。51Testing软件测试网I;w\S#F9S
Dim CurrentMode '记录当前状态
ltV]&h"rRq0CurrentMode = Reporter.Filter '保存当前状态51Testing软件测试网&^7BF.V$O9D~N
Reporter.Filter = 0 '启用报告模式51Testing软件测试网;zQ7f;U d`
Reporter.ReportEvent EventStatus,ReportStepName,Details '写入报告信息
Ts T jdC.`C&_er0Reporter.Filter = CurrentMode '还原报告状态51Testing软件测试网O0}}EX$Fb o+\?,s
End Function51Testing软件测试网!C:j gqR#[6E
'示例 writeRpt(0,"新增名片","向文件夹新增名片成功!")
BN3dP2X]S)miR0'***************************************************51Testing软件测试网 J+@ r{5A+H OKA
51Testing软件测试网0z VQ$b}
然后在脚本前加上一句:51Testing软件测试网]GG"nV{
h q4bD2hyWq0reporter.Filter = 1 '报告中只显示警告和错误51Testing软件测试网p!H?S.E3`z \!c
,kw,R(`?"ue/R X0默认的警告和错误,我们可以设置在结果中保存截图。
v'\eUgw~0
L(`$A0bYDTy8}/k;d0如果想在自定义的报告中添加截图,方法可参考如下代码:
-zv/{6AodF0
)ez-a9]%^2x/|+Ex{0'myObject为需要截图的对象 picName为图片名称,可自定义。51Testing软件测试网.E7L'y b{@
myObject.CaptureBitmap picName,True
N"z8Q"p'b^B#RuHv3O4T0reporter.ReportEvent 0,"Pic","--><img src= """ & Environment("ResultDir") & "\" & picName& """&>"
!j(K3jE1vQ#hsl051Testing软件测试网6X];u3V:W3Kej
:y,o#}h$[g0需要解释一下的是,必须在图像字符串前添加“< 或 >”。
X*k/i hFF#`051Testing软件测试网tk*H#dG,@!q
QTP的测试报告是以XML格式保存的。< 和> 是html的tag,相当于 < 和 >
f#]e&RD|8V z0由于在results.xml中有两行是定义是否在测试结果中显示html对象51Testing软件测试网^Yr"Uu*t
<!ELEMENT Details ( #PCDATA ) >51Testing软件测试网gC,]`9}
<!ATTLIST Details plainTxt (False|True) "True">51Testing软件测试网Si-^NRS.H'u?
缺省是显示成纯文本,这里如果把True改成False也可以直接显示图片。51Testing软件测试网5V E$|*a;d7p2O
51Testing软件测试网V;gyn)G'OjP
另外:VBS字符串中要使用",可以用chr(34)或者两个连续的"。<img src=""path"">
51Testing软件测试网^ NAgN![C
此时你,可以写一个自定义写报告的函数:51Testing软件测试网`9U,p?Os*n*W
#QT$b[ PM*dA lQU0'**********向QTP报告中写入自定义信息**************** 51Testing软件测试网["M]wIR
Public function writeRpt(byval EventStatus,byval ReportStepName,byval Details)
u0y1?el7yt |0'EventStatus是报告状态 0为micPass;1为micFail;2为micDone;3为micWarning。
!q"|&jtuS+oKUw0'ReportStepName是报告中预期步骤的名称(对象名)。51Testing软件测试网/X;]9y[I"_zjQ)i5C
'报告事件的描述。该字符串将在报告的步骤详细信息框架中显示。51Testing软件测试网I;w\S#F9S
Dim CurrentMode '记录当前状态
ltV]&h"rRq0CurrentMode = Reporter.Filter '保存当前状态51Testing软件测试网&^7BF.V$O9D~N
Reporter.Filter = 0 '启用报告模式51Testing软件测试网;zQ7f;U d`
Reporter.ReportEvent EventStatus,ReportStepName,Details '写入报告信息
Ts T jdC.`C&_er0Reporter.Filter = CurrentMode '还原报告状态51Testing软件测试网O0}}EX$Fb o+\?,s
End Function51Testing软件测试网!C:j gqR#[6E
'示例 writeRpt(0,"新增名片","向文件夹新增名片成功!")
BN3dP2X]S)miR0'***************************************************51Testing软件测试网 J+@ r{5A+H OKA
51Testing软件测试网0z VQ$b}
然后在脚本前加上一句:51Testing软件测试网]GG"nV{
h q4bD2hyWq0reporter.Filter = 1 '报告中只显示警告和错误51Testing软件测试网p!H?S.E3`z \!c
,kw,R(`?"ue/R X0默认的警告和错误,我们可以设置在结果中保存截图。
v'\eUgw~0
L(`$A0bYDTy8}/k;d0如果想在自定义的报告中添加截图,方法可参考如下代码:
-zv/{6AodF0
)ez-a9]%^2x/|+Ex{0'myObject为需要截图的对象 picName为图片名称,可自定义。51Testing软件测试网.E7L'y b{@
myObject.CaptureBitmap picName,True
N"z8Q"p'b^B#RuHv3O4T0reporter.ReportEvent 0,"Pic","--><img src= """ & Environment("ResultDir") & "\" & picName& """&>"
!j(K3jE1vQ#hsl051Testing软件测试网6X];u3V:W3Kej
:y,o#}h$[g0需要解释一下的是,必须在图像字符串前添加“< 或 >”。
X*k/i hFF#`051Testing软件测试网tk*H#dG,@!q
QTP的测试报告是以XML格式保存的。< 和> 是html的tag,相当于 < 和 >
f#]e&RD|8V z0由于在results.xml中有两行是定义是否在测试结果中显示html对象51Testing软件测试网^Yr"Uu*t
<!ELEMENT Details ( #PCDATA ) >51Testing软件测试网gC,]`9}
<!ATTLIST Details plainTxt (False|True) "True">51Testing软件测试网Si-^NRS.H'u?
缺省是显示成纯文本,这里如果把True改成False也可以直接显示图片。51Testing软件测试网5V E$|*a;d7p2O
51Testing软件测试网V;gyn)G'OjP
另外:VBS字符串中要使用",可以用chr(34)或者两个连续的"。<img src=""path"">