18道性能测试相关知识

来源:互联网 发布:网络词淑芬是什么意思 编辑:程序博客网 时间:2024/06/05 15:21
LoadRunner分哪三部分?
用户动作设计
场景设计
测试数据分析
第一个  Vuser Generator(脚本开发的)
第二个  Controller(指挥官的作用)
第三个  Analysis(收集测试数据,进行结果分析的)
第四个  load Generator(产生压力的机器)

a负载测试:是一种性能测试指数据在超负荷环境中运行,程序是否能够承担。  
b压力测试:通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大的服务级别的测试。通俗地讲,压力测试是为了发现在什么条件下您的应用程序的性能会变得不可接受。
c性能测试:测试软件测试的性能,包括负载测试,强度测试,数据库容量测试,基准测试以及基准测试。
d强度测试:强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况。这类测试往往可以书写系统要求的软硬件水平要求。

1.请分别针对性能测试、负载测试和压力测试试举一个简单的例子?
  性能测试例子:公司开发了一个小型项目管理系统,上线前需要做负载、压力、大数据量、强度测试等。
  负载测试:逐步加压,从而得到“响应时间不超过10秒”,“服务器平均CPU利用率低于85%”等指标阀值。
  压力测试:逐步加压,从而使“响应时间超过10秒”,“服务器平均CPU利用率高于90%”等指标来确定系统能承受的最大负载量。
2.请问什么是性能测试、负载测试、压力测试?
  性能测试:对一个软件系统而言,包括执行效率、资源占用、系统稳定性、安全性兼容性、可扩展性等。
  负载测试:通过逐步加压的方式来确定系统的处理能力,确定系统能承受的各项阀值。
  压力测试:逐步增加负载,使系统某些资源达到饱和甚至失效的测试。
3.请例举出常用的性能测试工具,并指出这些工具的优缺点?
  LoadRunner,录制脚本快捷操作简便,需要一定的学习时间,有采购成本。
4.请问您是如何得到性能测试需求?怎样针对需求设计、分析是否达到需求?
  在查看需求文档,从中提取性能测试需求,与用户交流,了解实际使用情况。
  结合业务信息设计操作场景总结出需测试的性能关键指标。
  执行用例后根据提取关键性能指标来分析是否满足性能需求。
5.什么时候可以开始执行性能测试?
  在产品相对比较稳定,功能测试结束后。灵活性比较强。
6.什么是集合点?设置集合点有什么意义?LoadRunner中设置集合点的函数是哪个?
  集合点可以控制各个Vuser以便在同一时刻执行任务。
  借助集合点,可以再LoadRunner中实现真正意义上的并发。
  lr_rendezvous()
7.性能测试时,是不是必须进行参数化?为什么要创建参数?LoadRunner中如何创建参数?
  是。  模拟用户真实的业务操作。
  创建参数列表,用参数替换固定的文本。
8.您了解关联吗?如何找出哪里需要关联?请给一些您所在项目的实例。
  了解。
  使用LoadRunner自动关联功能。手动关联:录制两份相同操作步骤的脚本,找出不同的部分进行判断。
  一个项目管理系统,每次登录后服务器都自动分配一个sessionID以便之后每次表单提交后验证。
9.您如何调试LoadRunner脚本?
   设置断点、增加log。

10.在LoadRunner中如何编写自定义函数?请给出一个您在以前项目中编写的函数。
lr中如何自定义函数
在创建用户自定义函数前我们需要和创建DLL(external libary)。把库放在VuGen bin 目录下。一旦加了库,把自定义函数分配做一个参数。该函数应该具有一下格式:__declspec (dllexport) char* <function name>(char*, char*)。
11.请问您是如何理解LoadRunner中集合点、事务以及检查点等概念?
集合点:可以控制各个Vuser以便在同一时刻执行任务,可实现真正意义上的并发。

12.如何应用LoadRunner进行性能测试?

       制定性能测试计划—>开发测试脚本—>设计测试场景—>执行测试场景—>监控测试场景—>分析测试结果

     

      对比:性能测试的步骤:

测试需求分析,制定测试计划--测试的设计和开发---测试的执行结果分析--编写测试报告

13.LoadRunner中思考时间有什么作用?

  用户执行两个连续操作期间等待的时间。模拟用户真实的使用情况。

14.LoadRunner中如何实现多用户并发操作,需要进行哪些设置?

  设置集合点来实现,在脚本中加入lr_rendezvous(),然后可以在控制器中设定集结百分比。

15.LoadRunner中有基于目标和手动两种场景设计方式,他们分别适用于什么情况?

  手动场景可按照要求来配置场景,能够更加精确的满足测试需要。

  目标场景要先制定希望实现的测试目标,然后由控制器惊醒自动测试评估。

  事务:事务是用来度量服务器响应时间的操作集。

  检查点:在回放脚本期间搜索特定内容,从而验证服务器响应内容的正确性


16.LoadRunner中有几种并发执行策略,它们的含义是什么?

  三种。1.当所有虚拟用户中的x%到达集合点时释放。2.当所有正在运行的虚拟用户中的x%到达集合点时释放。3.当x个虚拟用户到达集合点时释放。

17.有5台配置为处理器:Intel Pentium 4 1.6G,内存容量 512MB,硬盘容量 40GB的机器,如何较好的利用这些机器完成一次并发用户数为1000人的性能测试工作?

  1台做应用服务器,1台做数据库服务器,1台运行控制器并承担一部分负载生成任务,2台负载生成器。

18.平时大家在注册邮箱等关联操作时,经常会遇到需要输入验证码的情况,请问,如果我们公司也开发了一套带验证码的应用软件,需要警醒性能测试,您会如何处理?

  留一个后门,我们设定一个所谓的“万能验证码”,只要用户输入这个“万能验证码”,系统就验证通过。测试完成后补上后门。