Mercury Business Process Testing (二)
上一篇 / 下一篇 2010-03-19 11:08:19 / 个人分类:性能测试
将Business Component自动化
0gL(x{yS2?9V051Testing软件测试网P-T4H%\ m6j
再回到Business Components将其转成自动化测试脚本,在Design Steps点选QuickTest Keyword-Driven,将此Business Components转成QuickTest Keyword-Driven类型的测试脚本。Business Components支援三种类型的脚本:QuickTest Keyword-Driven、QuickTest scrīpted、WinRunner。
jE6U Pv'C/t*N.r051Testing软件测试网(q[boP
51Testing软件测试网2}AS^H(?[k
51Testing软件测试网G$FO z1_V R
51Testing软件测试网8MLc,kgD B*p
转成QuickTest Keyword-Driven脚本后,点选Automation就可以看到其Keyword-Driven的脚本,目前都还是ManualStep。51Testing软件测试网6C9ht2[c,i;R
51Testing软件测试网(z]VL R:\
nMH9jGa(j0
5{P:PX \Cm0
nn,b/bsgb aP0
选择Application Area。这个Application Area内含测试物件(Test Object)、Keyword steps、函式库等等。51Testing软件测试网dt}1zcF2l%?k
@$z p pGCc-q:so0
L*j|2tmi ~j0
51Testing软件测试网GPB@#DB*r
将Keyword-Driven步骤加入Business Component中
kx ?t*t(hWfA/F`0Nk3V6S `$U)C0
直接在Keyword View上透过选取Item、Operation、输入Value的方式建立Keyword-Driven脚本。51Testing软件测试网r3py ys:nh
第一个步骤為执行Flight Reservation程式,在Item栏位就不是选取Test Object,而是选取Operation,然后在Operation栏位选择OpenApp表示此步骤是要执行一个程式,同时在Value栏位输入这个程式的路径,这样第一个步骤就完成了。
?/Z)XnT7X0在Item选取Login Diaglog的Test Object,然后在Operation选取Activate,表示此步骤為开啟登入视窗,Value栏位则不需要输入任何值。51Testing软件测试网w:hp-P O]uu
51Testing软件测试网du;@Z3o A
51Testing软件测试网B,q`'pf;C1VJD[
选取AgentName的EditBox,Operation则是Set,表示要在Agent Name这个EditBox输入资料,至於要输入什麼资料就直接输入在Value栏位中。51Testing软件测试网`c-zV_2IM:x
51Testing软件测试网B/P#h7S I:q1N!_f O
51Testing软件测试网yU9|2Cg7W(z^j'X
51Testing软件测试网y)x/\#~w2k6G)D
%Xt/T%`y6u0Y AP0
在Value栏位输入mercury。51Testing软件测试网y`8B&]'yo
5W"t,C,yRdM m0'Jpm#C!J0
&R"X+}9Mf7c v0
IPW"k\|(|-KUj0
以相同的方式加入其他的步骤,完成后整个Business Component的执行脚本如下。51Testing软件测试网4?G)i&UO];]
*AtF,IY051Testing软件测试网~3?!Ip9m9z)j$y
Mercury 在 Quality Center 8.0 时就推出 Business Process Testing,到现在已经进步到 9.0 的版本了。为什么 Mercury 发展出 Business Process Testing 呢?Business Process Testing 的好处在哪?要如何使用Business Process Testing?我将在以下的文章为大家做个介绍。51Testing软件测试网D+f`4LO+N
51Testing软件测试网fFK{dBm,r
传动自动化测试的限制
%u|?}3z8O(@0?0{U%sQ T0
软体的自动化测试在过去一段时间中有长足的进步。每个世代的產品都成功解决了某些重要的挑战,但是同时也引进了不同的问题等待解决。51Testing软件测试网9hVO T$L#LJz
51Testing软件测试网#d4^;z'I.q&C'o$d g0o*k
第一代的自动化测试大概在15年前开始,透过硬体的方式录製键盘的输入并播放,但缺少检查点(checkpoint)的功能,而且测试脚本很难维护。
}r$U&e3Jr[051Testing软件测试网+P1h-DFP$i?.`
第二代的自动化测试则大约在10年前开始的,这时已经由硬体转变成透过软体录製/播放(capture/playback)的方式產生测试脚本(scrīpt),并且也增加了检查点的功能,可以对软体做验证,测试的范围也比硬体方式的自动化方式大了许多。比较大的问题是测试脚本也是一种程式语言,所以测试人员也需要懂程式语言,换句话说就是要会写程式。而且当软体有变动时,测试脚本也需要同步更新,这对测试人员来说是一大挑战,测试人员常常就是整个测试脚本再重新录製一遍。51Testing软件测试网 XiOa/a t'Z$Q6h ^)W
51Testing软件测试网?_8t%kA-^uB
以下為Mercury WinRunner测试脚本的范例
'@-{ H!i\~g+F3u,]051Testing软件测试网ns'n c+Um
51Testing软件测试网[|kE,s*Bpd@
M]1u(s#OT4Q9^D0
Y9M4iq&U;Zn0
在2001年开始了第三代的自动化测试称為「测试框架(test framework)」,主要是把测试脚本给抽象化(abstraction)(註:如Keyword-Driven Test),让非技术人员(如系统分析师、使用者等)即使不懂测试脚本,不会写程式的情况下,也可以使用自动化测试工具建立自动化测试个案。
%]9tX*|b}sSY0o S{MH-k@p0
举个 Mercury QuickTest Professional Keyword-Driven Test的测试脚本為例子,测试人员不管是录製、编辑或是看到的测试脚本都是以「click the “OK” button」这样的关键字所呈现的。
*Hcf,n3DkYn06AX7N)r yjq8J0O&??X\W0
51Testing软件测试网/D6m B ef"Q
「测试框架」确实是增加了测试团队的生產力,但是还是有些缺点:
D0X` Bqz E0* 以Keyword方式建立的测试脚本还是在测试步骤的层次,当设计一个复杂的商业流程测试个案可能还是需要大量的Keyword。对测试人员而言还是需要耗费大量的时间。51Testing软件测试网 GLG6o5|%N2G_!A
* 「测试框架」对於测试人员而言,只是测试脚本长得不再像是程式原始码,而像是在Excel中填入Keyword罢了,其实还是在写测试脚本。
Uwa.g H W0* 支援「测试框架」的自动化测试工具通常与之前的测试工具做法不同,例如不提供录製的功能,而限制了其弹性。再者,测试人员在使用这类工具时也常常不知其所以然,在不瞭解内部的运作下,很难对Keyword做客製化。51Testing软件测试网S8V?eN(~]u
* 「测试框架」即使已经被抽象化了,但是其层次还是停留在「步骤」的层次,尚未提升到「业务流程」的层次,迫使测试人员在建立测试脚本时,还是需要以「程式人员」的思考方式建立测试脚本,而不是以「业务人员」的角度来建立测试脚本。51Testing软件测试网HS$J-J\;LI+[ Q
* 「测试框架」的测试脚本没有与测试文件建立关联性,测试人员还是需要花费大量的工时在建立与维护测试文件的工作上。
7S!P Ye SDy0"bExW)A0
从上面的问题,可以看出「测试框架」这样的方式,对於具备技术背景的测试人员也许还 OK,但是对没有技术背景的测试人员如(业务人员或是使用者),还是有其使用上的困难。51Testing软件测试网~QE1A$RNo8l
51Testing软件测试网&h!WQ;q*iv$NOe$^x
Mercury Business Process Testing – 是一种转变而非一种新技术51Testing软件测试网AuF7}?4V0t-s}
51Testing软件测试网g"U;Jq8E1Q5F
Mercury很快地意识到这些挑战,并非只有单单改进第三代自动化测试工具就能解决,需要的是一个全新的方式。所以从测试脚本的设计、自动化、维护以及文件化做一个全面且根本的进化,进而发展出第四代的自动化测试工具「Mercury Business Process Testing」 。51Testing软件测试网:eo!l5M/Tz
I1g5bd'{rC*g0
相较於Keyword-Driven Testing,Business Process Testing的抽象化层次更高,到达了「业务流程」的层次。51Testing软件测试网E9E.cjA7d b|
wU8pM9_?0
以下的例子可以看出一个有登入动作的测试个案,使用Keyword-Driven Testing的方式,至少需要4个步骤:开啟应用程式登入视窗、输入帐号、输入密码、按下OK按钮来完成登入的动作。但是以Business Process Testing的方式,登入的动作就成為一个可以接受以帐号、密码為参数而且可以重复使用的业务流程元件。51Testing软件测试网 d5lG9T3]7Jp {J
51Testing软件测试网Ka/\$LD7nB
mH.H`,R0
51Testing软件测试网'I~ A._(j
dN$bp{!S3i-j/K$C0
k!^ b%L(fE0
'F}"H#qM@0
ph*O)r&o9h Z0
Business Process Testing的优点
E"{k$EX-g/x&T^0~/rJ)x&K T4rn4Lm0
使用Business Process Testing的自动化测试主要有以下的优点:
~8Z0?3Gmq0* 透过非技术性、元件化、以业务流程层次的方式设计测试个案,让业务人员以及一般使用者也可以参与自动化测试的工作。
k_)WQ.t9L}0* 业务元件可以被不同的测试个案所使用,加快建立自动化测试脚本的时间,并降低维护的成本。51Testing软件测试网5ZQur'El@r[A3w
* 建立或维护测试脚本时也会同时更新测试个案文件,大大缩短维护测试文件的时间。
U'F:vc1ie]x"w-v0如何Mercury Business Process Testing
`Y{$fp051Testing软件测试网H8se-X'gZ
Business Process Testing需要Mercury Quality Center与QuickTest Professional配合才能运作。同时测试团队中也需要二种角色,一是熟悉QuickTest Professional测试工具的人员(Automation Engineer),负责建立并维护Application Area、物件库(object repository)、library files、recovery scenarios,另外也需要负责对Business Component进行除错的工作;另一是非常熟悉业务流程的人员(Subject Matter Expert),透过Quality Center介面,设计Business Component以及Business Process Test并运用Application Area将其自动化。
)b W7T wz051Testing软件测试网7f0ZeS`{)k
使用Business Process Test的流程如下:51Testing软件测试网p.Si"s+K c
51Testing软件测试网Q#|I4X9N _)Y8m5j"t
5H,AX yb(]1C0
51Testing软件测试网%T H:CB/^)[ y
7o|)A+g%tK0
建立Business Component
K;|D'y9BE\E%W0+H'hc4C/Kuh,T0
首先建立一个名為Login的Business Component,并且填入相关资讯,如Summary、Pre-Condition、Post-Condition,让想要使用此Business Component的人员知道其目的、用途以及使用条件与限制。51Testing软件测试网 w q+H3hPk6M(r)`/`@
51Testing软件测试网+k\`$}cq$Sg[
x$Ue@ vTt{Z)^0
51Testing软件测试网%M1Z6JBIoob+a K
lJ H ];_5My| T3[&h'S0输入测试步骤
DF"|Lx O8G2A*D0'sS i y+\0
点选上方的Design Steps,开始输入测试步骤,含Step Name、Descrīption、Expected Result。51Testing软件测试网8W5LzT7G&g{ pFz
gpF6Iv\)yL#M051Testing软件测试网9ED7|?;Zb
51Testing软件测试网[ k]9R H0}yL
点选New Step将其餘的测试步骤也一併输入,最后可以看到此Busniess Component的执行步骤如下。
E:I"fx{.M;J V051Testing软件测试网tI'?*P+d
R(Nq6wA&e7pE1_T0
51Testing软件测试网Bg5C#dV\
51Testing软件测试网x(tnu6d|{
建立Business Process Test
Wh4O1o},jd051Testing软件测试网Row9T%Zh
点选Mercury Quality Center的Test Plan,建立一个名為「预定机位」的Business Process Test。51Testing软件测试网am`8q OXT&o
51Testing软件测试网fv%u*Ye*b|5x
51Testing软件测试网 u'q!I,[(t_v
Ic gM&@0
51Testing软件测试网ApCW)_s6f$C(ll
输入此测试个案的描述。
@XB.[V { x051Testing软件测试网4G#vcqJpn.e
51Testing软件测试网7e1kh'z!c)B;c xY1r!Y
?E^ `r NUD0
将Business Component加入Business Process Test中51Testing软件测试网:L:I-p C I5Q
51Testing软件测试网-O4d YUz9jS't5W
在Test scrīpt点选Select Component,将刚刚建立的Busniess Component依序以滑鼠拖拉到中间的区块。此Business Process Test由Login、Create Order、Update Order、Logout 4个Business Component所组成。51Testing软件测试网m M Bi.?
51Testing软件测试网S@;{$t+R0Y({
_7wH-KB5Pb0
4q q}yj%P0
将Business Component自动化
,sB JCp"CKx @V051Testing软件测试网@6O`4X{Y}
再回到Business Components将其转成自动化测试脚本,在Design Steps点选QuickTest Keyword-Driven,将此Business Components转成QuickTest Keyword-Driven类型的测试脚本。Business Components支援三种类型的脚本:QuickTest Keyword-Driven、QuickTest scrīpted、WinRunner。51Testing软件测试网^ N*~2x]*l]\3r
@9^ oO"|7P-}_ ey2a0K&hrF-h2?*b:c0
5aY0_W"WSn0
yI3@%c?0
转成QuickTest Keyword-Driven脚本后,点选Automation就可以看到其Keyword-Driven的脚本,目前都还是ManualStep。51Testing软件测试网:H F8aecZk(~#v
i.{C^;{e)hT0
.Y"~C2g L]d5b.g.[0
51Testing软件测试网5]l hEBP
选择Application Area。这个Application Area内含测试物件(Test Object)、Keyword steps、函式库等等。
F,_i4Rfq&?/GX051Testing软件测试网.V@tQ \6n Wqe e
51Testing软件测试网eN%G"Od0} A j/v D
51Testing软件测试网3IKMaD5uP&t
4C/TH)a9C6z]0
将Keyword-Driven步骤加入Business Component中51Testing软件测试网6I-a"Q4f$R
51Testing软件测试网4CkiO.~h-b+G
直接在Keyword View上透过选取Item、Operation、输入Value的方式建立Keyword-Driven脚本。51Testing软件测试网+jdn6S2k6|2L'q"v5B
第一个步骤為执行Flight Reservation程式,在Item栏位就不是选取Test Object,而是选取Operation,然后在Operation栏位选择OpenApp表示此步骤是要执行一个程式,同时在Value栏位输入这个程式的路径,这样第一个步骤就完成了。
ARD"^Bk6n0Item选取Login Diaglog的Test Object,然后在Operation选取Activate,表示此步骤為开啟登入视窗,Value栏位则不需要输入任何值。51Testing软件测试网 ML*XGu\ t+yr&_(i8K
51Testing软件测试网vXB*v/vpl'pr
)@eL%ni h(F0
{(W;[_-xg1?:cZ0
51Testing软件测试网x4IVrRJ6ae0DR:G
选取AgentName的EditBox,Operation则是Set,表示要在Agent Name这个EditBox输入资料,至於要输入什麼资料就直接输入在Value栏位中。51Testing软件测试网 hf-x5ylh(\y"P#W_g
51Testing软件测试网7L:]5F@9V'lm8S)L
F$b;VV(yfr0
51Testing软件测试网 { ]r7Q*@t[~0_
51Testing软件测试网K1A9]:sN w;~
在Value栏位输入mercury。
0q ~%oc'S~051Testing软件测试网2@"?/sG~9I%m
-P9qvjW0
'\2U;x"UD0
以相同的方式加入其他的步骤,完成后整个Business Component的执行脚本如下。
^&?f.hV#?4jb-I:\ O0
I8L8lZT0s @r
I0
TAG:
标题搜索
日历
|
|||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
1 | 2 | ||||||||
3 | 4 | 5 | 6 | 7 | 8 | 9 | |||
10 | 11 | 12 | 13 | 14 | 15 | 16 | |||
17 | 18 | 19 | 20 | 21 | 22 | 23 | |||
24 | 25 | 26 | 27 | 28 | 29 | 30 | |||
31 |
我的存档
数据统计
- 访问量: 45133
- 日志数: 57
- 文件数: 4
- 书签数: 1
- 建立时间: 2007-08-24
- 更新时间: 2011-12-23