The basis of performance tests
Dec 15
自学LoadRunner,重在测试设计 在51testing 看到 的一篇文章,发现他涉及的内容几乎把lr 的知识点,做一次测试应该包含的都包含进来了,虽然没有全部讲解,再次学习一下1、了解测试需求:日均20万首页访问量测试,测试指标响应时间、系统资源使用率2、系统的实际功能表现、系统体系结构功能:一个jsp页面,包括for循环及一个bmp图片;系统体系结构:Tomcat+JDK+JSP,无数据库;相关服务器配置:被测服务器硬件配置:内存2G;软件配置:OS WINXPSP3,IE6.0Tomcat配置:    tomcat内存(JVM):初始化内存100,最大可用内存为500,连接所耗内存2k为Tomcat分配更多的内存,如果是使用的catalina.sh或Catalina.bat启动的Tomcat,则可在这两个文件中添加“SET CATALINA_OPTS= -Xms300m –Xmx300m”将相关信息,如操作系统、软件配置(tomcat、数据库、中间件等等处于系统体系结构中的所有软件)都列举出来,然后进行数据分析,确定是否需要开展性能测试。另外可以与客户、工程运维、开发人员进行沟通,获取系统历史性能表现(针对系统已经上线的情况)掌握上述问题的详细情况,性能测试人员需要整理信息,并在测试方案中体现。1、分析测试需求、确定测试点日均20万PV,考虑到访问不是均等的,采用2/8原则(前提是没有任何历史数据提供参考,也无法从其他途径获取详细需求),20万*80%的业务量在24小时*20%的时间内完成=16万访问量需在4.8小时内完成。测试对象是系统的首页,所以测试点确定为系统首页,最终的测试需求为:在4.8小时内完成16万的首页访问业务。2、提取测试指标根据初步需求,系统要求获取响应时间与系统资源利用率响应时间:由于客户没有明确提出响应时间的参考标准,根据通用的测试经验值(2,5,8,10),我们采用2秒的响应时间,尽量贴切用户体验。所以,响应时间参考值为:2秒系统资源利用率:由于没有提出明确指标,故按照常规测试方法,我们监控CPU及内存的使用率表现即可。按照经验值,CPU、内存的利用率不超过70%(windows);3、建立业务模型a、弄清楚系统体系结构并画出系统组网图、网路拓扑图、业务流程图;b、分析清楚系统中的约束条件,一一列出并注上使用什么技术方法来解决比如:ip限制(一个ip只能做一次)可采用IP欺骗功能;数据有唯一性要求的(注册的用户名、添加的订单号等等)可使用参数化解决;数据之间是有关联性的(后面的业务操作可能需要前面业务的数据)可使用关联方法解决;想要判断业务逻辑的(判断是否登录成功)可用文本检查点+if语句进行处理;需要实现大并发量的模拟(比如100个绝对并发)使用集合点与think_time配合处理;无法使用action划分的动作(一次请求有多个响应的情况)可使用事务点解决;c、根据业务量流程图进行action划分,先划分好再设计脚本d、准备好测试数据:详细写出测试数据制造过程。尽量考虑全面了,不要有遗漏4、设计测试方案、脚本测试用例、场景用例a、测试方案,按照模版填写,并将建模阶段所有产出物进行细化确定。b、脚本用例设计:模拟用户登录系统,打开首页,待页面展示完毕即可约束条件:无测试数据:无操作步骤:输入url地址:http://localhost:8081/test/test.jsp期望结果:被访问页面(首页)在2秒内正常显示完毕,CPU使用率不超过70%,内存使用率不超过70%c、场景用例:测试目标是:4.8小时完成16万访问量,可以设计两种场景:1、场景开始时就加载所有(所有是多少?)并发;(可以考察系统支持绝对并发情况)start 所有vuser,选中第一个选项(simultaneously),持续运行阶段(duration)设置“run for 4.8个小时”,stop vuser方式选中第一个(simultaneously)立刻停止所有vuser。 2、采用逐步加压,持续运行,逐步减压的测试策略(相对来说系统有所缓冲,更真实模拟业务情况。)可以事先在提取测试指标阶段计算出大概的并发数:计算并发数的方法是:a、确定业务量:16万(使用2/8原则后的业务量)b、确定时间段:4.8小时(使用2/8原则后的时间段)c、确定单用户单次执行所消耗的时间:利用loadrunner并设置事务点考察做一次业务所消耗的时间(0.4134秒)d、4.8*3600/0.4134=一个用户在4.8小时内可以模拟访问多少次=大约为41800次,现有16万业务共需多少人模拟?16万/41800大约等于4个人,也就是说大概需要4个并发来模拟。已经计算出并发数,开始设计第二种场景这里策略是:每隔10分钟增加1个vuser(strat处设置为每隔10分钟增加一个),当所有vuser都上去后,持续运行4.8小时(duration设置为4小时48分钟),每隔10分钟减少1个vuser(stop处设置为每隔10分钟减少一个)场景设计完成后与脚本用例设计思路一起放在测试方案中,提交相关人员评审,没有问题后可待机实施性能测试工作。脚本设计与开发1、脚本设计(按照脚本测试用例来)录制、手动编写,能够录制尽量录制,减少难度录制脚本流程:a、确定协议;b/s结构常用的协议是web(http/html),c/s结构常用socket协议,如果不知道可以问开发同事,也可以使用抓包工具自行分析,loadrunner在9.5版本后提供了协议探测功能,我们可以自己探测。b、确定action;已经在建模过程中确定了。只需要在loadrunner中事先添加好(create action按钮);c、确定浏览器、杀毒软件、防火墙的设置;卸载不相干的浏览器插件,将浏览器中的“内容”中的自动完成清除掉,杀毒软件、防火墙最好关闭掉d、开启应用程序;启动被测服务,对于j2ee架构的,最好先运行一下,e、准备好测试数据;录制脚本过程中所使用的测试数据要事先准备好;f、录制脚本:1、注释:可以不用2、集合点:使用(view_homepage)3、事务点:使用,统计打开首页的时间,添加cookie时间放在action中统计,4、参数化:不使用,没有需要做参数化的点;5、关联:不使用,没有需要使用关联的点;6、文本检查点:不使用;7、思考时间:不需要,输入url回车后无需思考时间8、常用编程方法:不使用,未涉及到优化做完后回放调试脚本,没有问题就开始其他的脚本设计,当所有脚本设计完成后,可利用配置管理工具进行脚本管理(比如cvs,vss),如果手写代码:需要掌握客户端与服务器端的具体响应方式及内容,然后详细分析,最好由开发人员来处理。涉及到加密的信息传输,可能需要解密的函数。 场景设计与执行场景设计分为7个步骤,可将这些步骤列出来,一一处理:并发数重新确定为什么需要重新确定并发数,在指标提取阶段所估算出来的并发数,反推计算业务时有比较大的误差,原因是小数被进一位了。在实际测试过程中,估算出的并发数所消耗的数据量往往大于预先的估计,所以调整数据量(如果使用unique类型,block设置非常关键,设置不当可能会导致测试运行失败)设计场景计划按场景计划(场景执行策略针对所有脚本生效,无法单独定制)按组计划(针对单个脚本进行场景执行策略的设置)初始化设置:第三个选项(在每个vuser运行前初始化他,好处是节省系统资源)开始vuser设置(两个选项,当需要场景开始后立刻加载所遇vuser的话,就使用simultaneously,如果使用逐步增加的方式,则使用第二个选项)持续运行设置(两个选项,当需要vuser执行完成后就停止的话,选中第一个,如果模拟持续运行的情况,可使用第二个,当设置了持续运行时间后,run time setting的run logic中的迭代次数是不生效的。)stop设置与start类似,如果希望脚本运行完成后就可以,则选第一个选项,否则选第二个。设置运行时设置run logic需要注意的是与场景计划中的duration设置关系,如果duration中选的是第一个,那么run logic是生效的,如果是第二个,则不生效log设置:场景运行中设置日志启用,但仅在发生错误的时候发生日志,在脚本调试阶段,选择日志启用,一直发生日志,并选择扩展日志与参数替换。think time:尽量的模拟真实用户的行为习惯,启用思考时间,方法是as recorded,思考时间的修改可在代码中直接修改,也可以自定义变量去随机修改。rand函数miscellaneous:勾中continue on error,当发生错误的时候继续执行,原因是在测试过程中错误可能是服务器无法正确处理引起的。测试是不能立刻停止的。在脚本调试阶段,不勾,发生立刻停止并调试其他选项默认不做设置。设置集合点在脚本中没有设置集合点的话,则在场景中的集合点设置功能按钮是灰色不可用的。集合点的策略通常情况下不做改动。设置其他的选项(结果目录与负载生成器)结果目录存放场景运行结果,在结果分析中有用,可用于结果比较负载生成器:当测试机器的系统资源成为瓶颈的话,可以使用该方法将压力分发出去,让代理机模拟压力的产生,而controller负责收集测试数据并做分析。如需使用该功能,则需启动loadrunner agent,设置IP欺骗功能当系统对ip有限制的话,可使用该功能,通常情况不用,动态分配的ip是不能使用ip欺骗,需将ip设置静态的。 设置数据监控(application manage)可以利用loadrunner自带的监控功能,也可以根据实际需要选择恰当的测试监控工具,主要用来相关的系统资源使用情况。www.itlife365.comfrom:http://www.51testing.com/?uid-2730-action-viewspace-itemid-208968
Dec 15
Dec 15

作为一名合格的软件测试工程师,哪些技能是最需要及时掌握的?
  基本测试技能:

  1、测试用例

  测试用例是测试的根本,良好的测试用例,对测试起到的作用不言而喻。所以对于一个有一定基础的测试新人,应首先学习如何编写合理、有效的测试用例,同时,高效的执行测试用例,也是可以思考的问题。

  2、测试方法

  测试的方法有很多种,每种方法如何使用,使用的技巧,应做为一个重点去学习,毕竟快速、尽量多的发现BUG,是测试人员工作中重要的一个环节。

  3、测试工具

  自动化测试工具、测试管理工具、配置管理工具、其它测试辅助工具的使用,有一定的了解,能使用它提高测试工作的效率。

  4、业务知识(需求理解)

  能快速了解被测程序的业务知识及功能使用。对被测试对象有一个全面而正确的理解是做好测试工作的前提。即测试人员要知道它的业务流程、功能使用等。

  5、文档撰写

  文档在测试流程中有着举足轻重的地位,测试人员经常见到的,如:用例设计、缺陷报告、测试方案、测试计划等。所以,要成为一名优秀的测试人员或向上有一个好的发展,除了技术因素,良好的文档及文字处理能力也是不可或缺的。

  6、操作系统使用与维护

  熟悉当前最流行的操作系统,包括MS的Windows系列、Linux系列。比如现在使用比较多的是MS的Windows xp。熟知起码的操作和快捷键使用,熟练常用工具安装卸载。

  7、熟练使用Word 、Excel,文字输入

  编写测试用例、测试报告(BUG单)、软件使用手册是测试工程师必不可少的工作,因此word、Excel常用功能使用必须要熟练,如常用的插入图片、表格绘制等。快速的文字输入,也是体现工作效率的一个方面。

  8、能处理日常工作中经常出现的计算机问题。除了会使用计算机,学会如何修理他,如何更好的使用它也是很重要的功课。

from:网络

Tags:
Dec 3

1、破解及安装ie7补丁

1:将LR7.8或者LR8.0(安装包或者安装后目录中的都可以)中的
lm70.dll
mlr5lprg.dll
这两个文件复制并粘贴到LR8.1安装目录下的bin文件夹下,一般是C:\E:\Program Files\Mercury\LoadRunner\bin;

2:运行LR8.1,打开license管理器,点击添加new license,将老license复制进去,OK,验证通过!
7.8、8.0通用的license有:
golba-100: AEAMAUIK-YAFEKEKJJKEEA-BCJGI
web-10000: AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB

支持IE7

方法一:巧借IE6内核录制脚本
在系统安装目录下C:\WINDOWS\ie7\iexplore.exe

方法二:查看了下官方提供LoadRunner解决方法:
前提条件:
安装LoadRunner 8.1 Feature Pack 4
http://www.3atesting.com/filedown/LR81FP4.rar
然后安装:Internet Explorer 7 (IE 7) support for LoadRunner 8.1 Feature Pack 4
http://www.3atesting.com/filedown/LR_00581.zip
经过以上操作,即可以用LoadRunner在IE7环境下录制脚本^_^

解决弹出空白页

有的时候用LR8.1录制的时候。打开一个链接,会弹出两个浏览器。一个内容页面。一个空白窗口

至今没发现为什么。解决方法是。

1:IE7.0安装有问题,重新安装了。或者卸载掉IE7,(反正就是浏览器需要重新安装)(推荐)
2 :使用lr多协议录脚本,虽然只选择了一个web/http协议,具体见下面链接(这个方法不建议)

http://www.51testing.com/?135677/action_viewspace_itemid_19400.html

LoadRunner录制脚本不弹出IE浏览器问题

http://blog.csdn.net/chenshaoying/archive/2008/04/16/2297267.aspx

http://bbs.51testing.com/thread-47514-1-1.html


http://www.cnblogs.com/mayingbao/archive/2007/11/27/974306.html

2、默认浏览器设置

今天用了下LoadRunner,本机默认浏览器设置的是Firefox,录制脚本时提示“The default browser registered at this machine is not supported by the Web VUser recorder. Please change the recording options or select another default browser,估计是使用Firefox的问题,所以修改机器的默认浏览器设置,没想到设置还挺麻烦。

在IE和Firefox中设置了都不起作用,google了一下,修改了注册表:找到HKEY_CLASSES_ROOT\http\shell\open\command,在右边的窗口中双击"默认",将要用浏览器的可执行文件的完全路径输入到这里,例如设置IE为默认浏览器:输入“C:\Program Files\Internet Explorer\iexplore.exe”。然后找到 HKEY_CLASSES_ROOT\http\shell\open\ddeexec\Application,在右边的窗口中双击"默认",设置浏览器名,如果是Firefox则输入Firefox,如果是IE则输入IExplore。

结果进行了上面的设置还是不行,然后在IE中,“Internet选择->程序”,选上“检查Internet Explorer是否为默认的浏览器”,然后点击“重置Web设置”按钮,将IE重置一下。

然后再录制脚本,OK。
from:http://hi.baidu.com/___forever/blog/item/9c6b79fa387000839f514650.html

Dec 2
性能测试基础:
性能测试工程师的考评指标:   
    1 是否鞥呢独立开发脚步
    2 需求

性能测试分为6大种:
    1负载测试(Load Testing)  峰值处理能力 how much how fast
    2压力测试(Stree Testing) 侧重稳定性
    3容量测试(Volume Testing) how much

    4配置测试(Configuration Testing)
    5基准测试(Benchmark Testing )
    6 并发测试 (Concurrency Testing) 测试是否存在死锁 数据错误   比如注册《可以 添加查询锁
   
    编码阶段 侧重6,2  
    编码-测试之间:3
    阶段测试 1,4,5
性能指标:
    响应时间
    吞吐量
    服务器资源占用

性能测试的注意要点:
    1尽早进行
    2需要团队支持
    3需要独立的测试环境
    4测试前定义明确的测试目标
    5不要在服务器上进行性能测试
    6 创建的负载应该是模拟用户最常见、最密集的操作
    7 在真正的性能测试前尽可能多的进行预测试
    8 使用同一用户进行长时间大量操作是否存在内存泄露或者类似的错误
   
常见的应用性能测试工具有HP LoadRunner  Jmeter,OpenSTA
     提示单机软件不要使用LoadRunner Robot 等工具,建议使用Rational Purify

性能测试的流程:
    大概是:
    制定性能测试目标
    ->选择性能测试工具(需要进行可行性分析)
    ->设计性能测试(性能测试脚本开发,负载的生产规则及监控方式。测试环境的搭建等)
    ->监控分析系统
    ->性能调优 (反复前面的内容,直到ok)

2 自动化测试工具和性能测试工具的区别:
    类似于QTP 这类自动化测试工具无法生成负载,而LoadRunner可以,qtp 通过录制用户行为进行回放,可以模拟一个用户的操作,但是
一般只能模拟一个用户(由对象识别技术决定),如果要500 用户,需要500 台电脑
    LoadRunner 采用了协议的方式来模拟用户行为,是大多数性能测试工具的采用方式,(协议模拟)
在调用Load Generator 时注意不要让生成负载成为瓶颈。
Tags:
分页: 1/1 第一页 1 最后页