客户关系管理系统性能测试_第1页
客户关系管理系统性能测试_第2页
客户关系管理系统性能测试_第3页
客户关系管理系统性能测试_第4页
客户关系管理系统性能测试_第5页
免费预览已结束,剩余28页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、曲金2蓄酸或技帮当吃NanjingInstituteOfIndustryTechnology客户关系管理系统性能测试课题名称客户关系管理系统性能测试系/专业班级学号指导教师:目录第一章测试计划人力资源性能测试作为测试的一部分工作,根据测试计划,性能测试允许的时间为25个工作日,计划需要一个人进行测试。测试环境在进行测试前,必须先搭建好测试平台。服务器按章操作系统为Windows2003系统,其中数据库和应用服务器安装在同一台机器上。测试机安装的操作系统为WindowsXP系统,因为测试的并发用户最多为100个,其中Controller和负载机为同一台及其。测试机和服务器在同一个局域网内。详细的

2、测试机与服务器软硬件配置,见表1-1所示;设备硬件配置软件配置数据库服务器应用服务器PC机(一台)CPUInterXeonX3200内存:硬盘:300GBWindows2003MySQLApache控制器PC机(一台)WindowsXP负载机CPUInterCeleron内存:512MB硬盘:80GBIEMicrosoftOffice业务模型创建测试环境准备好之后要对业务模型进行设计,知道录制脚本时的业务流程及业务背景,如表1-2所示;指标种类业务模型登陆100个虚拟用户同时并发测试业务联系人准备12000条联系人记录进入联系人管理界面的并发用户数位25个增联系人活动并提交的并发用户数位25个

3、客户准备2400条客户记录进入客户界面的并发用户为25个新增客户记录并提交的并发用户数位25个商机准备2400条商机记录进入商机管理界面的并发用户为25个新增商机管理界面的并发用户为25个线索准备12000条销售活动记录进入线索管理界面的并发用户25个新增线索并提交的并发用户25个表1-2业务模型场景模型创建业务模型是用来规范业务如何活动的。那么场景又如何控制呢?这就需要创建一个场景模型。什么叫场景模型?场景模型用来约束和规范业务活动时的场景环境,指导场景如何设计。也就是说,如果没有定义好场景模型,那么就无法很好地去定义Control部分的场景设计或者测试出来的结果和真实的结果还存在很大的差异

4、。这几个模块具体的场景模型,如表1-3所示;表1-3场景模型:指标不性场景模型业务登陆1 .启用脚本的集合点2 .每5秒加载一个虚拟用户,虚拟用户加载完成之后,场景持续运行5分钟,结束后,每5秒释放一个虚拟用户3 .使用IP欺骗,IP欺骗新建15个IP地址4 .添加Windows计数器5 .监视虚拟用户运行日志文件联系人1 .启用脚本的集合点2 .每5秒加载一个虚拟用户,虚拟用户加载完成之后,每5秒释放一个虚拟用户3,使用IP欺骗,IP欺骗新建15个IP地址4 .添加Windows计数器5 .监视虚拟用户运行日志文件客户1 .启用脚本的集合点2 .每5秒加载一个虚拟用户,虚拟用户加载完成之后,

5、每5秒释放一个虚拟用户3,使用IP欺骗,IP欺骗新建15个IP地址4,添加Windows计数器5.监视虚拟用户运行日志文件商机1,启用脚本的集合点2.每5秒加载一个虚拟用户,虚拟用户加载完成之后,每5秒释放一个虚拟用户3,使用IP欺骗,IP欺骗新建15个IP地址4,添加Windows计数器5.监视虚拟用户运行日志文件线索1,启用脚本的集合点2,每5秒加载一个虚拟用户,虚拟用户加载完成之后,每5秒释放一个虚拟用户3,使用IP欺骗,IP欺骗新建15个IP地址4,添加Windows计数器5.监视虚拟用户运行日志文件测试数据准备完成以上工作后,接下来就要为业务模型准备数据,一般准备数据可以从以下几个方

6、面入手:1) 数据可以来自于以前的历史数据。如登陆模块,测试10个用户同时登陆的情况,如果已有10个真实的用户账号信息,那么在准备数据时,就可以直接调用这些现有的数据。2) 手动添加准备数据。如登录模块,如果现在没有10个现成的真实用户账号信息,那么就需要自己手动去创建,当然创建的方式就有很多种了,可以使用LoadRunner进行创建,也可以写一段小程序去创建,当然还可以选择手动创建。但是当数据量很大时,选择手动创建就是一件很困难的事,如测试BOSS(Business&OperationSupportSystem)系统,几千个虚拟用户并发,如果手动去准备这些数据就很麻烦。3) 数据以何种形式调

7、用。如登陆模块的这10个账号信息,在测试过程中如何调用,这里会出现两种不同的情况。一是文本形式,文本形式有一个缺点是,LoadRunner参数列表中最多允许100行参数,那么如果参数很多就不能用这种方式了,二是数据库的方式,如果大量参数要被调用的话,就应选择数据库的形式,因为数据库形式没有受记录的限制。各模块数据准备情况,见表1-4。表1-4准备数据指标不性准备数据登陆准备好100个正确的用户账号缶息业务联系人准备好12000条联系人记录客户准备好2400条客户记录商机准备好2400条商机记录线索准备好12000条线索记录这些数据都选择loadRunner生成,100个用户账号信息存储在数据库

8、中,以方便参数化时调用。第二章测试用例根据测试计划,设计了包括用力编号、测试目的、开发用户数、模拟用户行为和预期结果五大部分的测试用例。登陆用力编号LI_001测试目的测试100个虚拟用户并发时,系统登陆响应时间并发用户数100个模拟用户行为1 .进入登陆界面2 .输入用户名和密他,点击登陆预期结果系统登陆的响应时间不能超过5秒进入联系人管理界面用力编号TM_001测试目的测试进入联系人管理界面活动,系统进入联系人管理界面的响应时间并发用户数25个模拟用户行为1.进入登陆界面2,输入用户名和帝他3.进入首页,点击“联系人管理”按钮,进入联系人管理界面预期结果系统处理进入联系人管理界面响应时间不

9、能超过5秒新增联系人用力编号TM_002测试目的测试提交新增联系人活动,系统提交的响应时间并发用户数25个模拟用户行为1.进入登陆界面2,输入用户名和密他3.进入首页,点击“联系人管理”按钮,进入联系人管理界面4,在联系人管理界面,点击“新增联系人5.填写新增联系人信息,并提交”预期结果系统处理提交新增联系人信息的响应时间不能超过5秒进入客户管理界面用力编号CL_001测试目的测试进入客户界面活动,系统进入客户界面的响应时间并发用户数25个模拟用户行为1.进入登陆界面2,输入用户名和密他3,进入首页,点击“客户管理”按钮预期结果系统处理进入客户管理界面响应时间不能超过5秒新增客户记录用力编号C

10、L_002测试目的测试提交客户记录,系统提交客户记录的响应时间并发用户数25个模拟用户行为1,进入登陆界面2.输入用户名和帝他3 .进入首页,点击“客户管理”按钮4 .在客户管理界面,点击“新增客户”按钮5 .填写新增客户信息,并提交预期结果系统处理提交新增客户信息响应时间不能超过5秒进入商机管理界面用力编号BC_001测试目的测试进入商机管理界面活动,系统进入客户界面的响应时间并发用户数25个模拟用户行为1 .进入登陆界面2 .输入用户名和密他3 .进入首页,点击“商机管理”按钮预期结果系统处理进入商机管理界面响应时间不能超过5秒新增商机记录用力编号BC_002测试目的测新增商机记录,系统新

11、增商机的响应时间并发用户数25个模拟用户行为1 .进入登陆界面2 .输入用户名和帝他3 .进入首页,点击“商机管理”按钮4 .再去爱商机管理界面,点击“新增商机”按钮5 .填写新增商机信息,并提交预期结果系统处理新增商机响应时间不能超过5秒进入线索管理界面用力编号TH_001测试目的测试进入线索管理界面活动,系统进入线索界面的响应时间并发用户数25个模拟用户行为1 .进入登陆界面2 .输入用户名和帝他3 .进入首页,点击“线索管理”按钮预期结果系统处理进入线索管理界面响应时间不能超过5秒新增线索记录用力编号TH_002测试目的测试提交线索管理界面活动,系统新增线索界面的响应时间并发用户数25个

12、模拟用户行为1,进入登陆界面2.输入用户名和帝他3,进入首页,点击“线索管理”按钮4 .在线索管理界面,点击“新增线索”按钮5 .险些新增线索信息,并提交预期结果系统处理提交新线索响应时间不能超过5秒第三章执行测试脚本开发根据业务模型和场景模型可以开始开发测试脚本,主要涉及到测试脚本实现过程和脚本的结构。虚拟用户脚本的开发情况见表3-1表3-1虚拟用户脚本开发情况用例编号用例名称开发情况LI_001并发登陆在脚本中对用户名和密码进行参数化,参数调用是通过读取数据库中的数据来获得,设置文本检查点,检查登陆的用户名是都正确TM_001进入联系人管理界面该脚本和LI_001合并,在LI_001登陆后

13、,其中有25个虚拟用户进行并发联系人管理界面操作TM_002新增联系人该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发提交新增联系人活动操作CL_001进入客户管理界面该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发进入客户管理界面操作CL_002新增客户记录该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发新增客户记录操作BC_001进入商机管理界面该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发进入商机管理界面操作BC_002新增商机该脚本和LI_001合并,在LI_001登陆后,

14、其中有25个虚拟用户进行并发新增商机记录操作TH_001进入线索管理界面该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发进入线索管理界面操作TH_002新增线索记录该脚本和LI_001合并,在LI_001登陆后,其中有25个虚拟用户进行并发新增线索操作1.登陆进入Loadrunner主界面,如图3-1所示;图3-1LoadRunner点击“Create/EditScripts”,启用后新建一个用户脚本,因为我们要测试的是We位用所以如下所示,选择Web(HTTP/Html)协议,如图3-2所示;图3-2Web(HTTP/Html)协议在录制脚本中定义一个集合点“并发

15、登陆”,用来保证虚拟用户真的进行了并发登录操作。定义一个事务“提交登陆”,这样来统计登陆所花费的时间。添加文本检查点,检查登陆的用户名是否正确。所有代码都放在Action部分。并发登陆实例的脚本结构如图3-3所示。Actjon.Ei-FF+Srvict;CscmtfjrtntS4rtEervi匚七:CncxixTcn.1卫匚dLrl:enpi.NTah5jia::E=Vx1:otLe-rsfe_riillLe.fE-ejiA-XTfliia-KTin心TjM_30=)CtuClxuuK.(ivaCE1HBffFTH心Tint-6(iae)WdmitIita;3ndek口h$2Strrict:C

16、?nmxrcnlSrvict.CGriCTiri-ealEjlAServiceKmFIju!=iC0KTlftl图3-311小心Lrgtdgd:gie匚丁0通七出日中工:血盆各,zifgi2Service;CcncisirrentStartServici:CczicuiTentEnd.WrLhJArrcw.ffifUlrl:niK,t_o.igiW1arrcifw.eifUri:slit.ifIfrlMdKilsTabJliiftIfrl;giC2Ifrlradar石ifW1:tyT4bSp.Gf_2EidTrnaction-匚6K一登陆登陆用例脚本结构对登陆的用户名进行参数化,将参数化的文件

17、放在一个专门管理参数化数据的文件夹中,将参数列表中读取参数的路径由绝对路径更改为相对路径。在这里并未对密码进行参数化,为了测试方便,在准备数据时,用户名密码统一设置为“Admin”。故不需要对密码进行参数化。2,进入联系人管理界面在进入联系人管理界面的脚本中,只需对登陆的用户名进行参数化,这里没有对密码进行参数化,因为所有用户名、密码都是一样的。设置集合点,确保所有虚拟用户并发进入联系人管理界面。其脚本结构图,如图3-4所示。B-rid*iv-ws36A鞍隼管尊服面IMrk-2Cc)SartTr曲s:Blg-EK龙入联茶人首型男而7kinkTime-10QsccUri:inJex.ph(:_3

18、ServiceCniizurrent51-ittS*rtiiCbt*!bMrr*htInJITrl:styla.czs_34fe-viea:3f七也tStrvica:CthznaTtntniStrvicc_C*nCT3TtntStartS*rwiceCeiiccrrntEnlS*Eicb匚MuramtStartS-irc-ib:匚mETirntEndVrl!5es.-cJkFoEniflgiS-EffrictC*jbM.ar*rttGeltic:CvtiuxcutEiiiJWl:kLdtCLtfMrJ.!ncsyl-agiEUV#L;7lE6mE箪GfJTiinfcTxiTifl-2(sec3

19、Eji.1Trazus.clicn-匚EJ13小联亲/i音坷里武图3-4进入联系人管理界面3.新增联系人信息新增联系人脚本是最重要的脚本之一。录制完成脚本之后,对脚本进行回放,回放后进入系统查看是否已添加脚本中的新增联系人信息,此时发现,该脚本中新增用户信息并未被添加(录制脚本使用的登录用户名为testl,添加的联系人姓名为hehel,脚本调试过程中对登陆用户名进行参数化,参数内容为testl和test2),即用户test2中并没有联系人hehel的信息,这说明脚本出现问题。这时分析回放日志,但并未发现异常日志,这时一种猜测是脚本应该需要关联,前面讲了脚本关联的几种方法,下面进行以下分析处理:

20、1 )使用两个用户testl和test2分别录制业务流程一样的脚本。2 )再使用LoadRunner自带的WDiff工具比较两个脚本,此时发现在提交新增联系人信息的过程中“Name=last_name的内容不一致,如图3-5所示。下vjana1-nigyi-_r1aUITEM,EMDITEM,Nanie=firtnameUalue=t?Nne=salutdtianT-*(Jalue=TEMD1石1日=?外口10_30尸1(n*(Jaiue=,EMD.ITEM,Narag=laet_naHg,f*Ualue=1fEND1TCM,Nane=phon_imobile,Ua1u后=:EMDTTEllN

21、anp=ccaunl_nahpit,Ua111e=*,EHDTIPM,Ndnie=Jcc(junt_Ld,Ua1ue=,EHDITEM,KiTi?=DhnnPhanpbl.U3111P=_EMbTEM.图3-5WDiff比较脚本这说明每次提交一个新增联系人信息时,Name=last_nam8的值是服务器分配的,并且每次的值都不一样,这就说明需要对该ID进行关联,接着找到需要关联ID的左右边界,手动创建一个关联规则,重新录制脚本即可,关联后代码如图3-6所示。IM4JK贻岷二returnjnoduIe,iinw、Vaiue=UserswF一胃VXIIE*ENDITEM,4ame=retumjac

22、tionVaue二Login”,ENDITEM,Jame-ast_name/Vaiue-CSRuleJJJIF1.ENDITEM*Mne二ogin-module&me=ogin_action*,ue=PEmTTEMPVaue=1ENDITEM,llII5TIM-!图3-6脚本关联关联后再次进行回放,发现admin下面还是没有添加那个联系人,这说明脚本还是有问题,但实在是想不出哪里有问题,然后手动用admin这个用户名登陆系统,添加刚才的联系人,结果提示:“存在同名的联系人,是否正确添加”。到这里说明脚本已经成功添加了联系人,只是在联系人列表中未看到添加的联系人信息,如图3-7所不。y及茶人列表

23、人:*漫口urvif.旧IJ-CBWxarrinJEHKiO-ZHOIE35图3-7联系人列表这说明脚本在处理业务流程时已经出现问题,接下来应该分析添加联系人的业务流程,添加联系人界面如图3-8所示图3-8添加联系人经过分析发现,在提交新增联系人信息时,有一项“负责人”一直都是当前的用户名,再看一下联系人列表中的“负责人”栏,只有当前负责人添加的联系人信息才会显示出来,而test2用户下其实是添加了hehel这个联系人的,之所以看不到是因为在脚本运行的时候“负责人”项一直都是testl,原因找到了,最后只需要对“负责人”项进行参数化,并且负责人应该和登陆用户保持一致,但问题是不知道脚本中哪一项

24、是负责人信息,又没有其他的技巧,后来经过多次手动试验一项一项的排除后才找到了“负责人”项在脚本的位置,下面是修改后的脚本,如图3-9所示。LLeb_3Lmit_daia/rrh、.口.Actior-hlipi/Zlocalhcst/PSLiEahM/indc.曲口二他5射映厂_&Mrtentyi=te,他ferr-liUpi/rInralhcsrt/PSusflrCRhf/i-idex.php?action=LoirnrduI的I-rs”,apshot-ti.infrMogHUT,三num.hns-modjlt3JalmUsiEJENETMrWne=Kticn*,falueFAulhentic

25、ste,ZhDITEU,WweturnjToduk-Vaue-UsershENDIIEM,Th%二t*rrv)c;tion.-35*1n-NDJTFM.hg=lqFrnpdule,alje二,LMJ-TEM5,lanB=Ioj?11actijn,El-Dt-l.11n7lin*s=Iin_r*cord,且js;,匚比二人卞h魁userjwc,Vahjoadnir,END弧图3-9对负责人的值进行参数化场景设计场景设计主要是对Controller(控制器)进行设置,设置脚本运行时的环境。这里只对登陆、进入联系人管理界面和新增联系人三个模块进行详细的描述,其他的模块都大同小异,在此不进行详细的描述

26、。1.登陆这里场景组设置10个虚拟用户,如图3-10所示图3-10场景组设计场景策略的设置,在脚本运行时对所有的虚拟用户进行初始化,每5秒加载一个虚拟用户,虚拟用户加载完成后,持续运行5分钟,运行结束后每5秒释放一个虚拟用户,直到所有用户释放完成,如图3-11所示。图3-11场景策略设置启动IP欺骗功能,脚本中所有集合点都设置为使用状态,如图3-12所示。图3-12集合点设置2,进入联系人管理界面场景组设置10个虚拟用户,如图3-13所示口1M4e就啾RahQk心如fLgj浦图3-13场景组设置和登录模块一样,负载发生器没有进行设置。场景策略设置,在脚本运行时对所有的虚拟用户进行初始化,每5秒

27、加载一个虚拟用户,虚拟用户加载完成后,持续运行5分钟,运行结束后每5秒释放一个虚拟用户,直到所有虚拟用户释放完成,如图3-14所示。图3-14场景策略设置启动IP欺骗功能,脚本中所有集合点都设置为使用状态,如图3-15所示。图3-15集合点设置3.新增联系人管理信息场景组设置10个虚拟用户,如图3-16所示图3-16场景组设置场景策略设置,在脚本运行时对所有的虚拟用户进行初始化,每5秒加载一个虚拟用户,虚拟用户加载完成后,持续运行5分钟,运行结束后每5秒释放一个虚拟用户,直到所有虚拟用户释放完成如图3-17所示图3-17场景策略设置启动IP欺骗功能,脚本中所有集合点都设置为使用的状态,如图3-

28、18所示。图3-18集合点设置计数器设置计算器设置主要是设置在场景运行时,需要监控那些资源。在这里所有的脚本都对Windows资源和数据库服务器进行监控。这里以登录模块为例,其他的模块设置一致。计数器添加windows计数器,具体如何添加在前面讲述过,这里就不再详细描述,监控的对象为需要监控的某台服务器(数据库服务器或应用服务器的Windows资源),当然因为这里两个服务器都安装在同一台机器,不存在这些之分。Windows资源计数器如图3-19所示。Irtwwnwot*Lwr时图3-19Windows资源监控图数据库计数器MySQL数据库计数器白添加方式与Windows计数器的添加放肆一样。被

29、监控的机器为数据库服务器。MySQL数据库计数器如图3-20所示。DDHtqQIiQQCg-QE.onIe1I口口国gUII司QtQD-25叫国学r*WknrRin与MeSsc图3-20MySQL数据库计数器在添加数据库计数器时,有时场景状态栏输出窗口会提示如图3-20所示的错误信息,如图2-21所示;图3-21数据库计数器添加报错出错的原因是计数器的这些信息和Windows的这些信息名称不相符引起的,有时候在Windows计数器中也会出现。出错后这些指标的值LoadRunner无法获取。但是为什么与Windows资源的名称不相符就会报错,并且没有值显示呢?原因是因为LoadRunner的这些

30、计数器的值其实不是自己创建的,而是从Windows系统中调用出来的,故如果名称不一样就无法从系统中读到这些指标的值,这样这些指标的值就无法被Loadrunner显示出来,场景状态栏就会弹出错误提示信息。Windows操作系统内部监视器如图3-22所示图3-22Windows操作系统监视器Windows操作系统监视器也可以添加计数器,这和LoadRunner添加的计数器如出一辙。所以其实这些指标并不是LoadRunner自己去创建的,而是直接从Windows操作系统中“挖过来的”。场景监视在场景运行过程中必须对场景进行监控,通过监控场景运行时的情况来获得一些信息,这样有利于对性能测试结果进行分析

31、,以下几个方面的信息需要监控。在这里需要监控场景组中所有虚拟用户运行的情况,同时也可以对虚拟用户运行的情况进行控制,如图3-23所示。图3-23场景组中虚拟用户运行的情况同时还需要监视虚拟用户组中每个虚拟用户运行的情况,并且一定要观察日志文件的情况,如图3-24所示图3-24监视虚拟用户组运行的情况和日志文件监视场景状态图中信息的情况,最重要的是关注错误事务的情况,如图3-25所示JIJ口J图3-25监视场景运行状态图图3-26监视输出对话框的提示信息如果在运行过程中场景状态出现Errors的信息,那么一定要查看输出对话框错误信息的情况,可以帮助调试脚本和分析结果,如图3-26所示。1.监视数

32、据库在数据图部分主要监视5个视图的变化(正运行虚拟用户数、事物的响应时间、每秒点击率、Windows计数器和MySQL#数器),如图3-27所示图3-27监视数据图的信息第四章结果分析1.登陆场景是模拟100个虚拟用户并发登陆,当虚拟用户增加到50个时,每加载一个虚拟用户时,场景状态栏的失败事务数和错误信息就在增多,如图4-1所示。这说明当加载到50个虚拟用户后,服务器无法处理客户端的请求。RunninqViissrs0ElapsedTinnsU0:UU:31(hh:rnrr:sG)HitaSeconJ21?45:Q3St5DTtarwactinnvFailedTr?nsactbhsError

33、s2252口SeenanoStatusDown图4-1失败事务和错误信息接下来分析平均事务响应时间,如图4-2所示。平均事务响应时间一直在增加,也同样说明服务器无法处理客户端的请求,事务一Hno(MifSgp上;加附IC直无法处理完成。到这里可以得到结论应该是服务器已经出现问题,但还不明确是什么原因导致的。工勺。5103.120:?T30士和0;950.i.seo;1iJ70?B0羽0go:oneson:国:ijaccaoisoooaDDctagtss叩do:制日中sedTire(|-fci-j:Mri图4-2平均事务响应时间再看一下Windows计数器捕捉到的数据,可以看到CPU勺使用率达到100%内存也存在问题,但是网络没有问题,这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论