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

测试报告代码

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

转载处:http://www.51testing.com/?16178751Testing软件测试网s2sVU6~+GvVz51Testing软件测试网9MI*VwL8]0y
  自动化测试实际是将测试人员手工进行的工作脚 本化,这就需要在测试脚本运行完成后,展示一个明了的测试报告,供相关人员查看测试结果,判断系统的正确性,以下代码实现的是一个EXCEL格式的测试报 告,以Function为单位记录脚本的执行情况,若完成则显示Complete,在Comment中显示验证点检查结果情况,以此来判断系统运行的正确 行;若由于一些突发的异常情况导致脚本未执行完成,则显示Fail,在Comment中显示Err.Descrīption信息51Testing软件测试网2byZ u8N rS)^%Cv51Testing软件测试网Y6Z*za0^k
   当然,要达到以上效果,要求在业务脚本的检查点按照指定的格式书写,我的做法是设置一个全局变量记录所有检查点信息,然后传入给日志函数以下是代码,希望对有需要的朋友有所帮助:)51Testing软件测试网Rx/Rf&w&Vv MN
2[:W6Y$m%~119676Function ExcelReport(ReportExcelFile,sStatus,sDetails)51Testing软件测试网 V1o5pTH|B,nl
(U;S*K Arf0'定义变量
Q"U8h]7CUv0:[X}3| B)}7pCx.\p9[B119676  Dim fso51Testing软件测试网h.Z7nA*d2d:F)P`8wA
m} O#X(s0  Dim oExcel51Testing软件测试网 Q+wQ*AW
Q/XC"g q#FV%eU0  Dim ExcelFile51Testing软件测试网 P$oi%h!XgGNX9y
`1E+l8@)D0  Dim TestcaseName51Testing软件测试网k+]9X!C'JP{51Testing软件测试网 VkGb2_9X7~'l?X1N
  Dim objWorkBook
W(u ^Ad;F@P0K"h3`5q JxV119676  Dim objSheet51Testing软件测试网BY4[W K8|?@
ey*[Akl'c]K0'  Dim Environment("Row"), Environment("TCRow"), NewTC
/N-h,I/s5t%w00@3U+?%V a$jF119676 51Testing软件测试网 F9TJIg&yAcz,w
%T,qpMp7I)zw/N A4g/K119676  Set fso = CreateObject("scrīpting.FileSystemObject")
rmqx r\y0IM v0L@PMZ/f'L%`119676  Set ōExcel = CreateObject("Excel.Application")
,P n"d%w~V?*Y1G0`2n#i J-O+]119676' oExcel.Visible = True51Testing软件测试网 On5IE'Y^%A P
0| Z\hJ k)u,]x:q119676 51Testing软件测试网iAEOSh51Testing软件测试网a}(B1YM:^kcpWg
  '设置Excel报告样式51Testing软件测试网-RrpTftt{
A-?nL2PSX0  If  Not fso.FileExists(ReportExcelFile) Then51Testing软件测试网p)G6b1mC:Be ]
d [)AQ#I.Sx$T(f"{119676   oExcel.Workbooks.Add51Testing软件测试网6Ai*c-RM&_2bI
%s)a1Y2Vl7M+D{U'u119676  51Testing软件测试网}0a;Qm]r51Testing软件测试网jEV8qg,^u
   '获取工作簿的第一个Sheet页51Testing软件测试网 x&Q$I Rla^oM51Testing软件测试网 ZKP5v7I-]j7MW
   Set ōbjSheet = oExcel.Sheets.Item(1)51Testing软件测试网Lc)Z7O$q
*d{#f^u119676   oExcel.Sheets.Item(1).Select51Testing软件测试网,H&e4pwJZ9li9g3KQ
t'_.vy2g5\k0  51Testing软件测试网\Z0[N/]O8}51Testing软件测试网.[5jk2y6uY:u
   With objSheet
c E0?}$}5fZ0ft+\!d6D\ Z)V5{ rI119676    '更改sheet名51Testing软件测试网s4H7Bq,g Mv4rZ
A3id$k)W2Gu119676    .Name = "Test_Summary"51Testing软件测试网Ch0Hl2y}
9Ed9]*X^119676   51Testing软件测试网2`yip+h c8Q$A
6P!c`C-])N+zL119676    '设置列宽
Be+[m"M!d4K,N0+K d Y.K3F5V7hfo6S119676    .Columns("A:A").ColumnWidth = 551Testing软件测试网 q6qKm2M/n8q)g
Z.x0aG5rmh(UE@0    .Columns("B:B").ColumnWidth = 3551Testing软件测试网+Q7b)R1].@2M B|
1~6i*I7A{0Qt119676    .Columns("C:C").ColumnWidth = 1051Testing软件测试网 ]w1?(tF3Az x
q-w*l`{:I0    .Columns("D:D").ColumnWidth = 6051Testing软件测试网g${4_F&]2{
!ZK7N\UQ0    .Columns("A:D").HorizontalAlignment = -413151Testing软件测试网*?y M]hq)S51Testing软件测试网 oQo6R1W"E i0`
    .Columns("A:D").WrapText = True51Testing软件测试网.^Q^2bA2iO
9g8RV7M{-uTwv1xu0   51Testing软件测试网Gttdmc6Y;B51Testing软件测试网 snf8@,g8G
    '设置显示区域的字体类型和大小51Testing软件测试网oRy\`51Testing软件测试网's)^d)a!Z4~1`m/a
    .Range("A:D").Font.Name = "Arial"
FM*}} J0ZW7l M ^g119676    .Range("A:D").Font.Size = 1051Testing软件测试网xf7S,I4ahGwS
*K6`A c8qD119676   51Testing软件测试网9u7WK w%yZ8p
\'A$?7dH9ig fj119676    '设置文件头格式51Testing软件测试网 O\?7e+lV/]
w|K*w.Qy"FlXX}0    .Range("B1").Value = "TestResult"51Testing软件测试网3e+EvO4X s51Testing软件测试网(o-N`5?B k(\l&n
    .Range("B1:C1").Merge51Testing软件测试网,cr EZG0WJ
LE8WUw4XC!@+Ea!j(M119676    51Testing软件测试网 ] FinV!g
b3m,Yv0}A-t119676    '设置文件头格式字体和颜色51Testing软件测试网Ku^mA
qe)U y p&zA.r?+_.T119676    .Range("B1:C1").Interior.ColorIndex = 53
!OU5oZ mhE;QV5E0+rt5Th+L-dyQx119676    .Range("B1:C1").Font.ColorIndex = 1951Testing软件测试网n$t3u&S-nnR7z
I_Aa:wN\J0    .Range("B1:C1").Font.Bold = True
4lQ.M5?#I%]7v0i3YRF8c(g^#A6x+Ii119676   51Testing软件测试网 a B pLTB4t6TN51Testing软件测试网4\$n%O0dBcQ6Z R(co5^1p
    '设置执行的日期和时间
"B7Md vHl,d/NN0Pl7|SE119676    .Range("B3").Value = "Test Data:"51Testing软件测试网5U Xrh1^ {
W B R4d%p119676    .Range("B4").Value = "Test Start Time:"51Testing软件测试网1p/AQFP\1Pnh
-[[];\9E!Y119676    .Range("B5").Value = "Test End Time:"
(T0B]9b:S&J/EW08f+{0|x;eS/WM+x119676    .Range("B6").Value = "Test Duration: "   
@wHV/a*G*R;BT0bma;ae6St8Sk119676    .Range("C3").Value = Date51Testing软件测试网O7k5w6T;Znx
2C-a6Gm(YfOM0    .Range("C4").Value = Time51Testing软件测试网hsem*q ?}8xmU*bE
c:]pD u-}j+p119676    .Range("C5").Value = Time51Testing软件测试网8p.t%|p?&U
]Q&e8G;Av_~0    .Range("C6").Value = "=R[-1]C-R[-2]C"51Testing软件测试网,Yc"\~#JhY51Testing软件测试网"kk8iE.A3x+\
    .Range("C6").NumberFormat = "[h]:mm:ss;@"51Testing软件测试网^ u2uR7i~{V%`
n!J5^2yO$d0   51Testing软件测试网ox(s ~._51Testing软件测试网h!S*[[&rS!F*rZ:y
    '设置日期和时间cell的边界51Testing软件测试网"[$u`NZ Q}K7S
^u3o&v[[!B#y }![0    .Range("C3:C8").HorizontalAlignment = 4 '右边对齐51Testing软件测试网G mQn8FOt
k'u!b"\^Xr5Y C119676'     .Range("C3:C8").Font.Bold = True
qr,W'F6SD])H02oy*H__f0?%L#m119676'     .Range("C3:C8").Font.ColorIndex = 751Testing软件测试网 g8s'Xu/a#R
HBpV;[-Z,I:A4rJ(e119676    .Range("B3:C8").Borders(1).LineStyle. = 151Testing软件测试网t6rG#OERA @'?
{*SJ7svZ|119676    .Range("B3:C8").Borders(2).LineStyle. = 151Testing软件测试网W([7y1k2e7FG
_~I vfY0    .Range("B3:C8").Borders(3).LineStyle. = 151Testing软件测试网mk$qU&?8l[R%G#O51Testing软件测试网5L"xf"F3H0nR
    .Range("B3:C8").Borders(4).LineStyle. = 151Testing软件测试网Y P-aJh U#r)dW
'S`u~I0   51Testing软件测试网_K }5~dc:h3I
5v%pp j {"Lt\Y+^/@X0    '设置日期和时间Cell的样式
'q3l0[Vm V E05\|)@CS'Op"m,X119676    .Range("B3:C8").Interior.ColorIndex = 40
o"?]$A5|_z[8D/JQ0 gB,_0P ~X119676    .Range("B3:C8").Font.ColorIndex = 1251Testing软件测试网 k@ Q x9z~ @51Testing软件测试网8ob1D'KQ%V%g v-Z'G
    .Range("C3:C8").Font.ColorIndex = 7
r xd{^*YT}0:q.YJyKtn5rF j B7A119676    .Range("B3:A8").Font.Bold = True
,~ @-j!q+N0btG-m;Izz119676   51Testing软件测试网5YU+I v+s+udY ~
+~Ijl/jIg119676    .Range("B7").Value = "No Of Function:"
!]o o6p [/U:b0_R.} Z!PRs}119676    .Range("C7").Value = "0"51Testing软件测试网"nxM C$px
M,t hI/CD,NH0    .Range("B8").Value = "Test Machine"
9~:l^i1p ] r0;V6j#N me^119676    .Range("C8").Value = GetIP()51Testing软件测试网.y l~uqY iSA
C8C)gCrx`}:~}119676    .Range("B10").Value = "TestCase"51Testing软件测试网U"Ruw\h
@|XY b/aXv/~8x8y0    .Range("C10").Value = "Finish"51Testing软件测试网6E]b-X6wk x"fW1e
;qt.{K.M119676    .Range("D10").Value = "Comment"51Testing软件测试网cT%Cu&UU-S Ez51Testing软件测试网~6dq8er
   
1|'D4l o"[0"Pj|:enf!Z119676    '为Result Summery设置格式51Testing软件测试网&v1G9G#AS:N6f(k5D51Testing软件测试网r$] C;Pp xh!Q
    .Range("B10:D10").Interior.ColorIndex = 53
X[^GF6z4J x0O` n:p4K1|!yM119676    .Range("B10:D10").Font.ColorIndex = 1951Testing软件测试网 J z D6{!us!w,xV
MZ Vu i]lo0    .Range("B10:D10").Font.Bold = True51Testing软件测试网c/bW8F+VVa
9U*yg!v?j%T A^119676 51Testing软件测试网2cF$u8S|v:J
0@XKT!y"x/E$T119676    '为Result Summery设置边界51Testing软件测试网/gR[J^/HU
"{ R:|_{&yH119676    .Range("B10:D10").Borders(1).LineStyle. = 151Testing软件测试网 gL0i;pr6C^
8S#A3_0Xb0    .Range("B10:D10").Borders(2).LineStyle. = 151Testing软件测试网/]&X B7q(nk0B
De6S"PW+R0    .Range("B10:D10").Borders(3).LineStyle. = 151Testing软件测试网&N1X0k0v6rJv51Testing软件测试网/U4o"O)hJbt
    .Range("B10:D10").Borders(4).LineStyle. = 151Testing软件测试网4K w6_L%dK
3zd0UV*l ~k0    .Range("B10:D10").HorizontalAlignment = 351Testing软件测试网iHZ:w-t3i4|2?)_
"l(T0g Lt)w w8r i y0    .Range("C11:C1000").HorizontalAlignment = 3
] x5e{{`[+W0w-b:S'bnzF119676 51Testing软件测试网 ~jU/F'JA
s?2{ BR^119676    .Columns("B:D").Select51Testing软件测试网 z.kbN!? c5|
Sd Uh:PrOfl"s119676'     .Columns("B:D").Autofit
3P5am4^qI;Hoze0,YzKPwN Dx!~119676    .Range("B11").Select 51Testing软件测试网:]g&M4k4y m5`k} u V7K
&l3~3?0d5W%p |M0   End With51Testing软件测试网]bM~@ zpAN;i-[
%M7H/ZjvIvs ]'qQO0   oExcel.ActiveWindow.FreezePanes = True51Testing软件测试网+c_7Y0E)L0W
9}fW)|zC9~0   oExcel.ActiveWorkbook.SaveAs ReportExcelFile51Testing软件测试网 D}PL}#rg(p51Testing软件测试网6ZB7d_)J#U A z
   oExcel.Quit51Testing软件测试网2J8q^M [TC}M
U8E/?{.n0v0L_/to0  51Testing软件测试网.@$e U-`-|N0F6i
9^a f&w%{H0E0   Set ōbjSheet = Nothing
X gSwi\ z3^6h0M6a!m#Nm7~'|+Akh[119676  End If51Testing软件测试网eV%q Da @ y@51Testing软件测试网3KBN0@yQmis
 51Testing软件测试网7vH4\~t7n
i jLop6x119676  TestcaseName = Environment("TCase")51Testing软件测试网Qs+?;b?5j1Q?51Testing软件测试网.\t%u TM%? o
'   MsgBox TestcaseName51Testing软件测试网8t[A ANCl
@ ^ @-l3W F1^']r119676  Set ōbjWorkBook = oExcel.Workbooks.Open(ReportExcelFile)
nv;y*X%X.T0t/jHYu3A;?0t.C@3T119676  Set ōbjSheet = oExcel.Sheets("Test_Summary")51Testing软件测试网:mD&R;ii0n`B mz51Testing软件测试网6iV W/\3p
 51Testing软件测试网?i1nv-w%z
C2hNJ gH'ZQ119676  With objSheet51Testing软件测试网ad$qXKN`{wm H9C+b51Testing软件测试网o\(K$hKer&O:x!@
   '设置行数和是否NewTc标识51Testing软件测试网&AbT!V^\2ZP
N.mk9@ d*Y&@119676   Environment("Row") = .Range("C7").Value + 1151Testing软件测试网B lC%?EA3I pRH:C
1C Q i,d ? WP%n0   'NewTC = False51Testing软件测试网"P/[-BU E?.l+d51Testing软件测试网7CatZ6IY
  51Testing软件测试网 z"^B!G x7z p51Testing软件测试网x/^DR+B*U
   If TestcaseName <> objSheet.Cells(Environment("Row")-1,2).value Then51Testing软件测试网9A6c]{"T%Obb t
R9H x!k@)k&w7P0    .Cells(Environment("Row"),2).value = TestcaseName51Testing软件测试网,w\2AO}.b51Testing软件测试网 {d-b7Qe
    .Cells(Environment("Row"), 3).Value = sStatus51Testing软件测试网b-e,m9M*L3mG d*T51Testing软件测试网$I7x'DE1{g OR
    .Cells(Environment("Row"), 4).value = sDetails
,kN2z zbW2L0(Q;Y&xK'i7r,T$S8v119676   51Testing软件测试网Y\|@;i$tB nM
(vq4PdA(a119676    Select Case sStatus
)P6Cz4P%nVf0n3l3F2O'U w;B119676     Case "Fail"51Testing软件测试网S PW4x/e.S`6Z51Testing软件测试网;rS0ma-H9}-] G5w @6a
      .Range("C" & Environment("Row")).Font.ColorIndex = 351Testing软件测试网s2I z ehc51Testing软件测试网i4z!b8f/D4cM"FU
     Case "Complete"51Testing软件测试网_jTG Rt8\?T
$O(L*f&nt%G&h119676      .Range("C" & Environment("Row")).Font.ColorIndex = 50
fgY/cL@P1wu0MJz5I$KL119676    End Select51Testing软件测试网E8xw0a6E JD51Testing软件测试网s eX Gz?5u0N
   51Testing软件测试网4Ef+hu:T!L Xy
@F3vWX9x119676    'NewTC = True51Testing软件测试网!i#|'j*O@*uF51Testing软件测试网;u$u9_nR2Z]1T1T P
    .Range("C7").Value = .Range("C7").Value + 151Testing软件测试网~)]n T` u&q#A(tGh
hIJHJ pA%b/V X.t0    '设置边界
"vTq:VlG;^0)Rh?/}MKm119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(1).LineStyle. = 151Testing软件测试网1GV LI1I7Ar3W
\4?)l$w?-qg0{0    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(2).LineStyle. = 1
^me&z~%h1_*T7tU0;G6n b S ?:xH#V119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(3).LineStyle. = 151Testing软件测试网#se!T:mZ;rKu
$R_b/suS119676    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Borders(4).LineStyle. = 151Testing软件测试网*~;J4A/?|:m*s51Testing软件测试网!kK-j.Q,hM7XNU W?
    '设置字体和颜色?51Testing软件测试网 qD D)T{)\0M
PU?C5XJ0    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Interior.ColorIndex = 1951Testing软件测试网5G"xh\9I5rJ
d{ X:HP"I H j119676    .Range("B" & Environment("Row")).Font.ColorIndex = 5351Testing软件测试网d6{&t6nX.S Yo
"zO U7O,{+m*`qGW119676    .Range("D" & Environment("Row")).Font.ColorIndex = 4151Testing软件测试网wN;U ~+l
[@2_ V+u/j0    .Range("B" & Environment("Row") & ":D" & Environment("Row")).Font.Bold = True51Testing软件测试网0p-J6Rfn+|]?
X9I&}c+rN A119676   End If51Testing软件测试网gmXD }9B51Testing软件测试网{v~ lA9~D
  51Testing软件测试网]d |,YwR1vH51Testing软件测试网J#Pc{ S&P
   If (Not NewTC) And (sStatus = "Fail") Then51Testing软件测试网_D6L9].g+ww
3U1j%Ifhe5d/P2S119676    .Cells(Environment("Row"), 3).Value = "Fail"
e-A.c\5[$_0z z&F2Ss,}"U`,A119676    .Range("C" & Environment("Row")).Font.ColorIndex = 351Testing软件测试网#FuS ?:S)R:dh1Rc9j4J
4BRM?#L[1V119676   End If51Testing软件测试网+yH_IS-Q
,^5V;VrJv X-?h*AZ0  
u`"d5c ^3M.g\0bw(~^O&vPX_,_i119676   '更新结束时间51Testing软件测试网C|LA;UB
J5TJ!h;a]N0   .Range("C5").Value = Time51Testing软件测试网%J6q c Cq'I$E
!Q%a/` tH$H0  51Testing软件测试网$ohyG#M4xO J
5uU%wn(GQv.H119676   .Columns("B:D").Select51Testing软件测试网2r A0E/EF.f
}*Z2o ~-Fl-b ^119676'    .Columns("B:D").Autofit51Testing软件测试网*qh MUr]51Testing软件测试网zra4[tI(i
  End With
/em*hGJ iT06I;e4a)`yEY@(Z119676  oExcel.ActiveWindow.FreezePanes = True51Testing软件测试网4pJ Yx?ogV
/l P"Qb]Z119676 51Testing软件测试网3V d+UAo(?G
qFb!Pr"Rs119676  '保存结果
-a duQ?,L a8_0*WI"RG N8|*[jPg119676  objWorkBook.Save51Testing软件测试网]Z,@:TE;nY
1{5e[wo,s119676  oExcel.Quit51Testing软件测试网3^kD5C Vd)TQ7~
(YlK]lYz0 
eC X G-d|0-xo5_:K)R~119676  Set ōbjSheet = Nothing
r M1g-]J \ nJF0\N(S Sje#X*iU119676  Set ōbjWorkBook = Nothing
-R.n r|;Tfe4Gug6@8m0L:miPWQ119676  Set ōExcel = Nothing
3s_9NW\0wLHdK1|3{H0Jy+R119676  Set fso = Nothing51Testing软件测试网h5N0wh*oY~b
+nZ8MCk c!H:SL0End Function51Testing软件测试网`V5G3r3a4F Q4pG
OD NI#Wb:{0运行结果如图显示:eokZ5ua11967651Testing软件测试网x,lnA,^O i

2e:H*FoR051Testing软件测试网:Q3pO2`-ZHGW

l&`z,B [Y b0

TAG:

 

评分:0

我来说两句

Open Toolbar