啸:呼啸;瀚:浩瀚。心胸要宽阔,犹如浩瀚的沙漠;沉默是金但是要记住,沉默是为了推翻一切,淹没时间的不公不正,像呼啸的暴风雨一样势不可挡。

测试报告代码

上一篇 / 下一篇  2010-01-26 13:11:40 / 个人分类:测试工具

转载处:http://www.51testing.com/?16178751Testing软件测试网s2sVU6~+GvVz51Testing软件测试网BlTxy-d@0`D)C
  自动化测试实际是将测试人员手工进行的工作脚 本化,这就需要在测试脚本运行完成后,展示一个明了的测试报告,供相关人员查看测试结果,判断系统的正确性,以下代码实现的是一个EXCEL格式的测试报 告,以Function为单位记录脚本的执行情况,若完成则显示Complete,在Comment中显示验证点检查结果情况,以此来判断系统运行的正确 行;若由于一些突发的异常情况导致脚本未执行完成,则显示Fail,在Comment中显示Err.Descrīption信息51Testing软件测试网2byZ u8N rS)^%Cv51Testing软件测试网\o$L hM
   当然,要达到以上效果,要求在业务脚本的检查点按照指定的格式书写,我的做法是设置一个全局变量记录所有检查点信息,然后传入给日志函数以下是代码,希望对有需要的朋友有所帮助:)
t%{ Z1Oi02[:W6Y$m%~119676Function ExcelReport(ReportExcelFile,sStatus,sDetails)51Testing软件测试网 V1o5pTH|B,nl51Testing软件测试网v;C*]{PU!pk"\
'定义变量
-M l X2c3Z]8l0:[X}3| B)}7pCx.\p9[B119676  Dim fso51Testing软件测试网h.Z7nA*d2d:F)P`8wA51Testing软件测试网5{o/X}@U0d
  Dim oExcel51Testing软件测试网 Q+wQ*AW51Testing软件测试网E0Uv+@jL0P
  Dim ExcelFile51Testing软件测试网 P$oi%h!XgGNX9y51Testing软件测试网2? `9YH"g T {E
  Dim TestcaseName51Testing软件测试网k+]9X!C'JP{51Testing软件测试网%K"_ |!uI3s
  Dim objWorkBook
G)d.E#Z.A.jv0K"h3`5q JxV119676  Dim objSheet51Testing软件测试网BY4[W K8|?@
y'p2b#G4],D h0'  Dim Environment("Row"), Environment("TCRow"), NewTC
`|\r^f M00@3U+?%V a$jF119676 51Testing软件测试网x4FV:x$u,eT QX
%T,qpMp7I)zw/N A4g/K119676  Set fso = CreateObject("scrīpting.FileSystemObject")
+W%q:Xan%_"y0IM v0L@PMZ/f'L%`119676  Set ōExcel = CreateObject("Excel.Application")
9q gU"JN0`2n#i J-O+]119676' oExcel.Visible = True
4i Iv[b `00| Z\hJ k)u,]x:q119676 51Testing软件测试网iAEOSh51Testing软件测试网!A up r'F+@?bQA
  '设置Excel报告样式51Testing软件测试网-RrpTftt{51Testing软件测试网h:n3f3O+gB+p
  If  Not fso.FileExists(ReportExcelFile) Then
-d*V6B8\r,nS%f0d [)AQ#I.Sx$T(f"{119676   oExcel.Workbooks.Add51Testing软件测试网 w ES*MW6a
%s)a1Y2Vl7M+D{U'u119676  51Testing软件测试网}0a;Qm]r51Testing软件测试网Bc.x7K g a7_"p.?
   '获取工作簿的第一个Sheet页51Testing软件测试网 x&Q$I Rla^oM
;QLl}i2M [V3jN0   Set ōbjSheet = oExcel.Sheets.Item(1)51Testing软件测试网rIg"_m"B"U
*d{#f^u119676   oExcel.Sheets.Item(1).Select51Testing软件测试网,H&e4pwJZ9li9g3KQ
]^&^"Nw m0  51Testing软件测试网\Z0[N/]O8}51Testing软件测试网@h%ChA(U-EA T[
   With objSheet
EOmK#N.r-G0ft+\!d6D\ Z)V5{ rI119676    '更改sheet名51Testing软件测试网dV!qd9Y7IyE#L'w
A3id$k)W2Gu119676    .Name = "Test_Summary"51Testing软件测试网3_)S A v7JU
9Ed9]*X^119676   51Testing软件测试网lsZ#vnJ G0g2MJf^Q
6P!c`C-])N+zL119676    '设置列宽51Testing软件测试网(P\ mj#i
+K d Y.K3F5V7hfo6S119676    .Columns("A:A").ColumnWidth = 551Testing软件测试网 q6qKm2M/n8q)g
H[H,U Y;{{0    .Columns("B:B").ColumnWidth = 3551Testing软件测试网P,a'_Ag!n
1~6i*I7A{0Qt119676    .Columns("C:C").ColumnWidth = 1051Testing软件测试网 ]w1?(tF3Az x
6H]6d/pJC!@:miP0    .Columns("D:D").ColumnWidth = 6051Testing软件测试网g${4_F&]2{
Y YltW!{F0    .Columns("A:D").HorizontalAlignment = -413151Testing软件测试网*?y M]hq)S51Testing软件测试网j9{ kx4MW'WeK)[
    .Columns("A:D").WrapText = True51Testing软件测试网.^Q^2bA2iO
g'QyN-}$O$x0   51Testing软件测试网Gttdmc6Y;B
5~(A)b@ y*Fx xu0    '设置显示区域的字体类型和大小51Testing软件测试网oRy\`
v(nT^ `aP0    .Range("A:D").Font.Name = "Arial"51Testing软件测试网ssG f@uN\ Z h
ZW7l M ^g119676    .Range("A:D").Font.Size = 10
.v(W)k dP0*K6`A c8qD119676   
u8B7N]1A-p9Z0\'A$?7dH9ig fj119676    '设置文件头格式51Testing软件测试网 O\?7e+lV/]51Testing软件测试网&D h5}0Vt7}9]r*K
    .Range("B1").Value = "TestResult"51Testing软件测试网3e+EvO4X s
H0`&J_8n\#jT0    .Range("B1:C1").Merge
"I n9@ZB(h0LE8WUw4XC!@+Ea!j(M119676    
0ujH7hP:[zJ!U J0b3m,Yv0}A-t119676    '设置文件头格式字体和颜色51Testing软件测试网2W3`6v\ ? gc5p IO
qe)U y p&zA.r?+_.T119676    .Range("B1:C1").Interior.ColorIndex = 53
V8O-G;j/C5v{0+rt5Th+L-dyQx119676    .Range("B1:C1").Font.ColorIndex = 1951Testing软件测试网n$t3u&S-nnR7z
JO \p4I-z&lb0    .Range("B1:C1").Font.Bold = True51Testing软件测试网9cw1S i-Y0d
i3YRF8c(g^#A6x+Ii119676   51Testing软件测试网 a B pLTB4t6TN51Testing软件测试网ZB%U!Os0O0AK T
    '设置执行的日期和时间
|`r0J?/Xyl0Pl7|SE119676    .Range("B3").Value = "Test Data:"
T;DQO4wU.T9`MD0W B R4d%p119676    .Range("B4").Value = "Test Start Time:"51Testing软件测试网hm P ]a{
-[[];\9E!Y119676    .Range("B5").Value = "Test End Time:"51Testing软件测试网7F w#y |T{
8f+{0|x;eS/WM+x119676    .Range("B6").Value = "Test Duration: "   
ZL+wa|9@ X2O;dK0bma;ae6St8Sk119676    .Range("C3").Value = Date51Testing软件测试网O7k5w6T;Znx51Testing软件测试网%Ma GMz
    .Range("C4").Value = Time
p%?#m"IJj4zL0c:]pD u-}j+p119676    .Range("C5").Value = Time51Testing软件测试网8p.t%|p?&U
s(G3WEp`0    .Range("C6").Value = "=R[-1]C-R[-2]C"51Testing软件测试网,Yc"\~#JhY51Testing软件测试网 z q__%ZBJyz
    .Range("C6").NumberFormat = "[h]:mm:ss;@"51Testing软件测试网^ u2uR7i~{V%`
BE u?*Y:j4MN0   51Testing软件测试网ox(s ~._51Testing软件测试网'K0[d$c |'VI
    '设置日期和时间cell的边界51Testing软件测试网"[$u`NZ Q}K7S
W2Ru$Yw"^*G ~h A0[0    .Range("C3:C8").HorizontalAlignment = 4 '右边对齐
s3Gv9Bw'^T0k'u!b"\^Xr5Y C119676'     .Range("C3:C8").Font.Bold = True
8lHNC'P Fm7M.^#n,i"cf02oy*H__f0?%L#m119676'     .Range("C3:C8").Font.ColorIndex = 7
/N"Jh u(U FZ;uJ0HBpV;[-Z,I:A4rJ(e119676    .Range("B3:C8").Borders(1).LineStyle. = 151Testing软件测试网6LOQTx,\ca9Uoj
{*SJ7svZ|119676    .Range("B3:C8").Borders(2).LineStyle. = 151Testing软件测试网W([7y1k2e7FG
g8I`r8k{ u(S j0    .Range("B3:C8").Borders(3).LineStyle. = 151Testing软件测试网mk$qU&?8l[R%G#O
~)u AI8r1C0    .Range("B3:C8").Borders(4).LineStyle. = 151Testing软件测试网Y P-aJh U#r)dW51Testing软件测试网F6~ xGEX
   51Testing软件测试网_K }5~dc:h3I
;v-G ?3O f4@v0    '设置日期和时间Cell的样式
.M {Mu@9}05\|)@CS'Op"m,X119676    .Range("B3:C8").Interior.ColorIndex = 4051Testing软件测试网Hmr_Ns
gB,_0P ~X119676    .Range("B3:C8").Font.ColorIndex = 1251Testing软件测试网 k@ Q x9z~ @
~lN.q%qG6e0    .Range("C3:C8").Font.ColorIndex = 7
@l5J \ }jI0:q.YJyKtn5rF j B7A119676    .Range("B3:A8").Font.Bold = True51Testing软件测试网 w_(Z1od`y:F(h
btG-m;Izz119676   51Testing软件测试网,[DU)M| I/y)ga
+~Ijl/jIg119676    .Range("B7").Value = "No Of Function:"51Testing软件测试网)e x[}:rw
_R.} Z!PRs}119676    .Range("C7").Value = "0"51Testing软件测试网"nxM C$px
*j-ai@t_^0    .Range("B8").Value = "Test Machine"51Testing软件测试网7I/A ]x/uO+M
;V6j#N me^119676    .Range("C8").Value = GetIP()51Testing软件测试网 `$}\j)bjT'`a0o
C8C)gCrx`}:~}119676    .Range("B10").Value = "TestCase"51Testing软件测试网U"Ruw\h51Testing软件测试网M.f'~?"I`[*w
    .Range("C10").Value = "Finish"
B^ Z+` ?c0;qt.{K.M119676    .Range("D10").Value = "Comment"51Testing软件测试网cT%Cu&UU-S Ez51Testing软件测试网L5O]+L1Q Qtkg;Vk)qJ
   51Testing软件测试网T ?_8kJV
"Pj|:enf!Z119676    '为Result Summery设置格式51Testing软件测试网&v1G9G#AS:N6f(k5D51Testing软件测试网 Pa \jDo'ex0z5\
    .Range("B10:D10").Interior.ColorIndex = 5351Testing软件测试网(P5fyRV?
O` n:p4K1|!yM119676    .Range("B10:D10").Font.ColorIndex = 1951Testing软件测试网 J z D6{!us!w,xV51Testing软件测试网Vtq?X:Gb A0[Q
    .Range("B10:D10").Font.Bold = True
/n3j._(aq09U*yg!v?j%T A^119676 
'OG0Paor#t00@XKT!y"x/E$T119676    '为Result Summery设置边界
9C$G-Rb4KO4Y0"{ R:|_{&yH119676    .Range("B10:D10").Borders(1).LineStyle. = 151Testing软件测试网 gL0i;pr6C^51Testing软件测试网QdQA5G+o z
    .Range("B10:D10").Borders(2).LineStyle. = 151Testing软件测试网/]&X B7q(nk0B
l6y4K.u:Faf-v/bX0    .Range("B10:D10").Borders(3).LineStyle. = 151Testing软件测试网&N1X0k0v6rJv51Testing软件测试网R7tkZ(DI0Ge
    .Range("B10:D10").Borders(4).LineStyle. = 151Testing软件测试网4K w6_L%dK51Testing软件测试网&HK!PL AO5U0W
    .Range("B10:D10").HorizontalAlignment = 351Testing软件测试网iHZ:w-t3i4|2?)_
)DX5]jb~^,dH0    .Range("C11:C1000").HorizontalAlignment = 351Testing软件测试网pZM(c ]6D'k
w-b:S'bnzF119676 51Testing软件测试网7TZnx-{8gp
s?2{ BR^119676    .Columns("B:D").Select
8\)r/b`x!O0Sd Uh:PrOfl"s119676'     .Columns("B:D").Autofit51Testing软件测试网&E,b7a[6ztNp
,YzKPwN Dx!~119676    .Range("B11").Select 51Testing软件测试网:]g&M4k4y m5`k} u V7K
;j%@b1S0_0K5K7C0   End With51Testing软件测试网]bM~@ zpAN;i-[
^@eK.jok/~$l0   oExcel.ActiveWindow.FreezePanes = True51Testing软件测试网+c_7Y0E)L0W
2K7WN_ v0   oExcel.ActiveWorkbook.SaveAs ReportExcelFile51Testing软件测试网 D}PL}#rg(p
:a9adbM.|0   oExcel.Quit51Testing软件测试网2J8q^M [TC}M
*D,f-N8I(joq0  51Testing软件测试网.@$e U-`-|N0F6i51Testing软件测试网OpJ-SoY
   Set ōbjSheet = Nothing51Testing软件测试网(EgL K-]:rGt
M6a!m#Nm7~'|+Akh[119676  End If51Testing软件测试网eV%q Da @ y@
8R${*`4SX&G(SEE0 51Testing软件测试网u;iVm&u| T8{Yj_(g
i jLop6x119676  TestcaseName = Environment("TCase")51Testing软件测试网Qs+?;b?5j1Q?51Testing软件测试网0u'Ynb*n
'   MsgBox TestcaseName51Testing软件测试网njE;n'mS5R r
@ ^ @-l3W F1^']r119676  Set ōbjWorkBook = oExcel.Workbooks.Open(ReportExcelFile)51Testing软件测试网P4[;]Qc'fq
t/jHYu3A;?0t.C@3T119676  Set ōbjSheet = oExcel.Sheets("Test_Summary")51Testing软件测试网:mD&R;ii0n`B mz
%{TZz+il2m$?r7a M:z0 51Testing软件测试网"l!O*T/ui'| Hf
C2hNJ gH'ZQ119676  With objSheet51Testing软件测试网ad$qXKN`{wm H9C+b51Testing软件测试网%b}d9N8J)s.~5J w
   '设置行数和是否NewTc标识51Testing软件测试网9x9JrU2Q9B,|?#G
N.mk9@ d*Y&@119676   Environment("Row") = .Range("C7").Value + 1151Testing软件测试网B lC%?EA3I pRH:C51Testing软件测试网 O'ATW#]1c
   'NewTC = False51Testing软件测试网"P/[-BU E?.l+d51Testing软件测试网Wn!z]/G6s,g9{)WB
  51Testing软件测试网 z"^B!G x7z p
2@e!{s~7CI0   If TestcaseName <> objSheet.Cells(Environment("Row")-1,2).value Then51Testing软件测试网9A6c]{"T%Obb t
#Z'M&k[*?~q/R0    .Cells(Environment("Row"),2).value = TestcaseName51Testing软件测试网,w\2AO}.b51Testing软件测试网u;b(C8u~Jd5R
    .Cells(Environment("Row"), 3).Value = sStatus51Testing软件测试网b-e,m9M*L3mG d*T
__E2TC_$R0    .Cells(Environment("Row"), 4).value = sDetails51Testing软件测试网e"p,ui3q
(Q;Y&xK'i7r,T$S8v119676   
N$r1{u&dm L9^0(vq4PdA(a119676    Select Case sStatus
zUJ8FRc lUR8d0n3l3F2O'U w;B119676     Case "Fail"51Testing软件测试网S PW4x/e.S`6Z51Testing软件测试网'ue~iN1K j.c
      .Range("C" & Environment("Row")).Font.ColorIndex = 351Testing软件测试网s2I z ehc
s | VkmH L |`4]W%v0     Case "Complete"
T d\ ?uB%s7Yjr0$O(L*f&nt%G&h119676      .Range("C" & Environment("Row")).Font.ColorIndex = 50
Mgw K.]Q0MJz5I$KL119676    End Select51Testing软件测试网E8xw0a6E JD51Testing软件测试网+s H,d9zc
   51Testing软件测试网{Y,z(NRI:y5Q-j
@F3vWX9x119676    'NewTC = True51Testing软件测试网!i#|'j*O@*uF
)?)CZO1JV^0    .Range("C7").Value = .Range("C7").Value + 151Testing软件测试网~)]n T` u&q#A(tGh
:Q m(iw c"Q\0    '设置边界
T;N7eRwA\0)Rh?/}MKm119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(1).LineStyle. = 151Testing软件测试网1GV LI1I7Ar3W51Testing软件测试网AO^Z:\-S
    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(2).LineStyle. = 1
8P T7j$yvpV)H-in;W0;G6n b S ?:xH#V119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(3).LineStyle. = 151Testing软件测试网3FZxI OSG
$R_b/suS119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(4).LineStyle. = 151Testing软件测试网*~;J4A/?|:m*s
3E7g0BE7D/P*o0    '设置字体和颜色?51Testing软件测试网 qD D)T{)\0M
$sCY9q_br?X0    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Interior.ColorIndex = 1951Testing软件测试网!r[(Fs f%z
d{ X:HP"I H j119676    .Range("B" & Environment("Row")).Font.ColorIndex = 53
){,p~aHzq*hh0"zO U7O,{+m*`qGW119676    .Range("D" & Environment("Row")).Font.ColorIndex = 4151Testing软件测试网wN;U ~+l51Testing软件测试网 xZq^]0~
    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Font.Bold = True
)X'Sz1q gl)na%Qx0X9I&}c+rN A119676   End If51Testing软件测试网gmXD }9B51Testing软件测试网 N0DN1L O
  51Testing软件测试网]d |,YwR1vH
'L2hc\-s S,g0   If (Not NewTC) And (sStatus = "Fail") Then
#u[.D @ H;g!`M0K03U1j%Ifhe5d/P2S119676    .Cells(Environment("Row"), 3).Value = "Fail"51Testing软件测试网l7fn\M:bK#c,N
z z&F2Ss,}"U`,A119676    .Range("C" & Environment("Row")).Font.ColorIndex = 3
ZR9Ys?E| c04BRM?#L[1V119676   End If51Testing软件测试网+yH_IS-Q
3h%FD'\ lva:^#l*|$~0  51Testing软件测试网+{ ^6@` wp$`0i-TF
bw(~^O&vPX_,_i119676   '更新结束时间51Testing软件测试网C|LA;UB
rP J-A fb0   .Range("C5").Value = Time51Testing软件测试网%J6q c Cq'I$E
+_U;dwJ9Z1WrR0  
$k{6rW5N Y05uU%wn(GQv.H119676   .Columns("B:D").Select51Testing软件测试网i9zh l }Gl&?d
}*Z2o ~-Fl-b ^119676'    .Columns("B:D").Autofit51Testing软件测试网*qh MUr]
2M6UQ0_9|0  End With
fQ?'U-C+b1a"@06I;e4a)`yEY@(Z119676  oExcel.ActiveWindow.FreezePanes = True
$hXes kcy,vq0/l P"Qb]Z119676 
C{;I'E6ll3h/wh4H0qFb!Pr"Rs119676  '保存结果51Testing软件测试网 D/lO8Y/V.\2MWb
*WI"RG N8|*[jPg119676  objWorkBook.Save
D`Nh.b M01{5e[wo,s119676  oExcel.Quit51Testing软件测试网3^kD5C Vd)TQ7~
Q/Q~)x"eY}S0 
w*M8r8a@.c0-xo5_:K)R~119676  Set ōbjSheet = Nothing
$q|G*g!s:VN0h.D0\N(S Sje#X*iU119676  Set ōbjWorkBook = Nothing51Testing软件测试网Z5M&k^ S*{
L:miPWQ119676  Set ōExcel = Nothing
}y%G z*K0wLHdK1|3{H0Jy+R119676  Set fso = Nothing51Testing软件测试网h5N0wh*oY~b51Testing软件测试网3s2lp l7M{"B"e*~
End Function51Testing软件测试网`V5G3r3a4F Q4pG
G7j'H]'mvrQ0运行结果如图显示:eokZ5ua11967651Testing软件测试网x,lnA,^O i

KVC-S'V051Testing软件测试网:Q3pO2`-ZHGW51Testing软件测试网 A~ H-z'g HH


TAG:

 

评分:0

我来说两句

Open Toolbar