Sands 2007-8-2 14:19
性能测试中各种文件的命名规范
[size=2]昨天发了一个贴,[/size][size=2][b][email=[url]http://bbs.51testing.com/thread-85120-1-2.html[/url]][size=2][b]Loadrunner 结果分析向导.doc[/b][/size][/email][/b][b]。[/b]不知道是否对大家有所帮助,但是对很多热情的顶友还是非常感谢。你们的支持让我有了发新贴的动力。
今天的主题是命名规范,我们知道在开发项目中非常强调命名规范,比如在JAVA里类和函数都会有不同的规则,那么在运用loadrunner的性能项目中会有什么样的命名规范呢,让我来问以下三个问题:
<1>如何进行命名规范呢?
<2>规范的命名会给项目带来什么好处呢?
<3>如何对脚本,测试报告等不同的文档进行有效的管理呢?
好,我们先来讨论如何进行命名规范呢,同时这些规范会给工作过程中带来什么样的好处。在使用loadrunner的过程中哪些东西需要我们去命名呢?我总结了下,以下几个东西我们需要进行命名。
Script Name,
Action Name,
Transaction Name,
Result Name in Controller,
HTML Report name.
Scenario Name.
那么如何命名才能有效的进行管理和提高工作效率了。我们举一个简单的例子然后对上述的东西进行一一说明。
例子:
客户需要对一个网上银行系统进行性能测试,需要测试用例包括存钱,取钱,查询。同时给出步骤如下。
[/size][table=98%][tr][td=3,1,842][font=宋体][size=2][color=#000000]Case Name: WithDraw[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]Steps[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Action[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Expected Results[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]1[/color][/size][/font][/td][td][font=宋体][color=#000000][size=2]Enter URL [/size][url=http://www.onlinebank.com/login.do][size=2]http://www.onlinebank.com/login.do[/size][/url][/color][/font][/td][td][font=宋体][size=2][color=#000000]The login page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]2[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]1. Login using the following credentials
Userid: Sands
Password: testing
2. Click “Go”[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Onlinebank's main page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]3[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Click on WithDraw hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]WithDraw Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]4[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]Input the number less than your balance.
Click "Submit"[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]WithDraw successful Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]5[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]click on Logoff hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Logoff successful Page should be displayed[/color][/size][/font][/td][/tr][tr][td=3,1][font=宋体][size=2][color=#000000]Case Name: Deposit[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]Steps[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Action[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Expected Results[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]1[/color][/size][/font][/td][td][font=宋体][color=#000000][size=2]Enter URL [/size][url=http://www.onlinebank.com/login.do][size=2]http://www.onlinebank.com/login.do[/size][/url][/color][/font][/td][td][font=宋体][size=2][color=#000000]The login page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]2[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]1. Login using the following credentials
Userid: Sands
Password: testing
2. Click “Go”[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Onlinebank's main page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]3[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Click on Deposit hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Deposit Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]4[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]Input the money number
Click "Submit"[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Deposit successful Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]5[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]click on Logoff hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Logoff successful Page should be displayed[/color][/size][/font][/td][/tr][tr][td=3,1][font=宋体][size=2][color=#000000]Case Name: Inquery[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]Steps[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Action[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Expected Results[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]1[/color][/size][/font][/td][td][font=宋体][color=#000000][size=2]Enter URL [/size][url=http://www.onlinebank.com/login.do][size=2]http://www.onlinebank.com/login.do[/size][/url][/color][/font][/td][td][font=宋体][size=2][color=#000000]The login page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]2[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]1. Login using the following credentials
Userid: Sands
Password: testing
2. Click “Go”[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Onlinebank's main page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]3[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Click on Inquery hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Inquery Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]4[/color][/size][/font][/td][td=1,1,381][font=宋体][size=2][color=#000000]Choose a the date in From dropdown
Choose a the date in to dropdown
Click "Submit"[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Search Result Page should be displayed[/color][/size][/font][/td][/tr][tr][td][font=宋体][size=2][color=#000000]5[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]click on Logoff hyperlink in the top navigate[/color][/size][/font][/td][td][font=宋体][size=2][color=#000000]Logoff successful Page should be displayed[/color][/size][/font][/td][/tr][/table]
[size=2][b]Script Name Convention:[/b]
从上述的需求中我们看出该需求有三个用例。所以我们要录三个脚本,录好脚本后我把三个脚本命名如下:
Onlinebank_S1_withdraw_V1_080207
Onlinebank_S2_deposit_V1_080207
Onlinebank_S3_inquery_V1_080207
我们对脚本的名字进行这种命名规范有什么好处呢,
第一,我们在文件夹中寻找脚本可以很容易进行排序。
第二,可以进行版本管理。
[b]Action Name Convention:[/b]
我们在做脚本的时候也需要对Action Name进行命名,因为loadrunner是默认把Action当作一个Transaction.所以在这里对其命名主要是在察看数据的过程中能将Action和包含在其中的Transaction好排序。我把Action的命名如下:
S1_Z_onlinebank_withdraw_V1_080207
可能到此你还不是非常明白为什么要这么命名,接下来看了Transaction name的时候你就会明白了.
[b]Transaction Name Convention:[/b]
S1_A_OpenLoginPage
S1_B_Login
S1_C_ClickWithdrawLink
S1_D_WithdrawMoney
S1_E_Logoff
这样做的好处就是你可以很容易在各种测试结果中进行sort,比如response time graph等等。
我们回过头来看为什么Action name为什么那么命名:不多说,给大家排下序就知道了
S1_A_OpenLoginPage
S1_B_Login
S1_C_ClickWithdrawLink
S1_D_WithdrawMoney
S1_E_Logoff
S1_Z_onlinebank_withdraw_V1_080207
有的时候朋友会说如果多于26 Transaction怎么办?很简单,用Y1,Y2........来增加。
[b]Result Name in Controller:[/b]
Onlinebank_S1S2S3_stress_test_results_080207
这里是S1S2S3是这次测试你载入的是那些脚本。如果这次只测了S1,那就是
Onlinebank_S1_stress_test_results_080207
这样做的好处是一看就可以看出是什么系统,哪个脚本,执行日期是哪天。
[b]HTML Report name:[/b]
该项目与Result Name in Controller相同。
[b]Scenario Name:[/b]
Onlinebank_S1S2S3_Stress_test_300Users_080207
在Scenario的命名中你需要提高多少个用户,这样找这个Scenario 就可以对该Scenario有个大致的了解。
同时在进行文档管理时,可以设立如下的文件结构。
onlinebank
Scripts
Scenaros
Results
Reports
然后将生成的各个文件存储在相应的文件夹中。
不知道该文质量如何,希望对新手有所益,同时老手也能够提出不足的地方,谢谢。
[/size]
[[i] 本帖最后由 Sands 于 2007-8-3 11:31 编辑 [/i]]
423799223 2007-8-2 14:43
写的不错呀
估计楼主公司应该是大公司哦
我们公司测试才3人 555555
ilovezhoujoe 2007-8-2 15:20
不错,值得学习。
xingcyx 2007-8-8 11:08
跟我们的做法有些类似。
我们一般是
Onlinebank_S1S2S3_stress_1u_10m_080207_1021
比起LZ的多了几个用户数和持续时间,以及测试的开始时间,大体上还是差不多的。
正好我最近也正准备整理一些类似的东西,不过感觉LZ的内容还是少了点。
Sands 2007-8-9 10:35
回复 #8 xingcyx 的帖子
不知道xingcyx在这方面还有什么见解,大家可以相互讨论
suoyi 2007-8-9 11:26
顶一下~~
有时会为不太一目了然的脚本名和场景名搞得很头痛,也试着规范了一下,效果不是很明显。
学习LZ的方法~~
seyou 2007-8-9 11:44
可以参考,但好像每家公司都有自己的一套命名规范吧...
serena_meledy 2007-8-9 15:24
值得学习!
[quote]
写的不错呀
估计楼主公司应该是大公司哦
我们公司测试才3人 555555
[/quote]
同命相怜:俺们真正测试的也就2个人sdlkfj9
huipingzhai 2007-9-14 15:50
回复 #1 Sands 的帖子
不知道什么时候才能自己做一个完整的性能测试,看似很难,先支持一下楼主
juicy1231 2007-9-18 16:37
谢谢搂主
kimi23 2007-9-21 14:15
我们公司测试一共就三人,很容易分得清sdlkfj7 sdlkfj7
darling.lin 2007-10-8 16:18
3Q:loveliness:
msnshow 2007-12-17 15:43
不错不错,不过规范这个东西,得看实际情况,在大的项目中比较明显,非常重要;小项目中也不用那么细
mmvviitt 2008-3-3 00:29
主要还是管理自动化测试用例的一个手段
十分有效
大家都按照这个办法来作就好了
bluemoon1999 2008-3-4 10:56
我们公司搞性能测试就我一个人,有时候脚本多了 也有点晕 .
学习下~~
cafard-haibin 2008-7-8 11:01
规范可以及大提高工作效率。支持。