dsf

发布新日志

  • 性能测试工程师的面试题

    2008-06-21 22:54:20

    2.性能测试包含了哪些测试(至少举出3种)
     
    3.简述性能测试的步骤
     
    4.简述使用Loadrunner的步骤
     
    5.什么时候可以开始执行性能测试?
     
    6.LoadRunner由哪些部件组成?
     
    7.你使用LoadRunner的哪个部件来录制脚本?
     
    8.LoadRunner的哪个部件可以模拟多用户并发下回放脚本?
     
    9.什么是集合点?设置集合点有什么意义?Loadrunner中设置集合点的函数是哪个?
     
    10.什么是场景?场景的重要性有哪些?如何设置场景?
     
    11.请解释一下如何录制web脚本?
     
    12.为什么要创建参数?如何创建参数?
     
    13.什么是关联?请解释一下自动关联和手动关联的不同。
     
    14.你如何找出哪里需要关联?请给一些你所在项目的实例。
     
    15.你在哪里设置自动关联选项?
     
    16.哪个函数是用来截取虚拟用户脚本中的动态值?(手工管联)
     
    17.你在VUGen中何时选择关闭日志?何时选择标准和扩展日志?
     
    18.你如何调试LoadRunner脚本?
     
    19你在LR中如何编写自定义函数?请给出一些你在以前进行的项目中编写的函数。
     
    20.在运行设置下你能更改那些设置?
     
    21.你在不同的环境下如何设置迭代?
     
    22.你如何在负载测试模式下执行功能测试
     
    23.什么是逐步递增?你如何来设置?
     
    24.以线程方式运行的虚拟用户有哪些优点?
     
    25.当你需要在出错时停止执行脚本,你怎么做?
     
    26.响应时间和吞吐量之间的关系是什么?
     
    27.说明一下如何在LR中配置系统计数器?
     
    28.你如何识别性能瓶颈?
     
    29.如果web服务器、数据库以及网络都正常,问题会出在哪里?
     
    30.如何发现web服务器的相关问题?
     
    31.如何发现数据库的相关问题?
     
    32.解释所有web录制配置?
     
    33.解释一下覆盖图和关联图的区别?
     
    34.你如何设计负载?标准是什么?
     
    35.Vuser_init中包括什么内容?
     
    36. Vuser_end中包括什么内容?
     
    37.什么是think time?think_time有什么用?
     
    38.标准日志和扩展日志的区别是什么?
     
    39.解释以下函数及他们的不同之处。
    Lr_debug_message
    Lr_output_message
    Lr_error_message
    Lrd_stmt
    Lrd_fetch
     
    40.什么是吞吐量?
     
    41.场景设置有哪几种方法?

  • [转]性能测试技术提高的门槛

    2008-06-21 22:23:10

    随着软件测试行业的逐渐发展,性能测试也变得火热起来。从各大测试论坛和测试交流群的交流主题的热门程度来看,性能测试已经成为大家非常感兴趣的话题。性能测试作为软件测试行业技术性相对较高的工作(自动化测试白盒测试、性能测试)来说,个人觉得其操作门槛还是不低的。对于测试新手来说入门有一定的难度,做的好就更加不容易了,可能花了不少时间而实际收获不大。因此觉得有必要来专门探讨一下性能测试的门槛,以及如何更好的迈进这个门槛。

      先来分析一下一些关于性能测试入门级的常见问题:

      1、请问怎么做象PhotoShop这类单机程序的性能测试;

      2、用Delphi开发的程序,应该用什么协议来录制脚本;

      3、用IP欺骗能对外网进行测试吗;

      关于第1个问题,问题本身并没有错误,单机版也有性能问题。但和我们通常所说的性能测试是两回事,不能混为一谈。如果这个算是问题的话,那我想是由于不清楚性能测试的概念和原理所造成的。第2个问题也不少见,但这种问题无法回答。我们知道,性能测试采用的协议是由被测系统的体系架构和通信协议决定的,而不在乎你用什么开发工具或开发语言。第3个问题,关于IP欺骗一般只用在内网,不管你在内网如何欺骗,经过网络地址转换后到了外网上的IP地址表现就是你的公网的IP,除非你一开始就设置成公网的IP地址,但这个一般都不可能。这个问题体现提问者对于网络知识的理解还不深入。

      以上问题反映了在学习性能测试人员的一个比较普遍的现象,缺乏必要的知识积累、知识面不足,但又由于学习兴趣或工作压力期望急于求成,由此而形成这样一个矛盾的局面。

      在我看来,性能测试是一项综合性很强的工作,甚至可以作为一项工程来看待。

      从性能测试的知识体系来看,性能测试需要掌握性能测试的基础知识、业务知识、开发相关知识、以及性能测试工具

      基础知识包括性能测试的原理、常见的测试类型、方法、策略,如何进行一个计划、设计、实施、分析等性能测试过程。没有性能测试基础知识,一切简单的性能测试在你手上都将出现各种问题,测试交流将变得难以沟通,同时性能测试的成功率将大大降低。

      业务知识通常都被忽略了。性能测试要基于被测系统的应用场景才有实际的价值,测试场景对性能测试结果有决定性的影响,因此测试场景的设计是非常关键的,场景的设计需要和业务应用结合起来。在一些比较正规的性能测试过程中,会有业务人员配合一起做性能用例设计的。

      开发相关的知识也是必须具备的知识,通常在这方面也是我们最大的缺点。这方面的知识包括操作系统数据库、应用服务器、中间件、网络等,每一个都是一门很深的学问,而要求性能测试人员都精通好像也不太现实。但起码的知识还是需要掌握的,比如通常有哪些参数需要监控和调整,它们之间是如何通信和运作的,某一方面知识的欠缺都可能导致测试模拟不准确或问题定位不充分,没有这些知识的支撑性能测试将变得难以下手或者学习工作的进展都会有很大的影响。

      测试工具的应用,这个是目前学习的焦点。只有在前面3点的基础上,采用合适的测试工具,才有助于测试目标的达成。

      从另外的角度分析,性能测试又可以分为技术、方法和管理方面的范畴。没有方法的指导光有技术那是行不通的,那是有勇无谋的体现。同时性能测试经常作为一个独立的阶段和活动,更需要用项目管理的方法进行,比如一个在客户现场的性能测试验收测试,与客户进行交流、时间计划的制定、测试进度的控制、测试脚本和测试数据的版本管理、各种资源的谐调等,都是需要用管理的思想进行的。

      从以上分析可以看出,由于性能测试工作需要具备这么多的知识,因此在一定程度上也成为了性能测试的门槛。这个综合的门槛将会成为很多性能测试新手入门的一道障碍,要突破这道障碍,建议结合自己的知识体系有针对性地去学习和提高。

      性能测试是一个技术与方法并重的工作,目前论坛上多谈技术,少谈方法,很多人甚至在没有任何性能测试基础知识的情况下就埋头苦学测试工具,我觉得是不应该的。我们应该意识到,测试工具只是性能测试中的一部分,仅是为达到性能测试目的而采用的一种手段。性能测试对于我们最大的价值在于方法和经验,我们学习的目标是整个性能测试过程上方法学的东西,而不是掌握具体某个测试工具。LoadRunner并不是万能的,在什么情况下应该采用什么工具才能达到最佳的效果,需要我们去判断。

      另外,学习需要有一个循序渐进的过程,性能测试需要长时间的知识积累,没有什么捷径可言。从学习效率和职业发展方面考虑,本人不太建议没有工作经验的测试新手一上来就扎进性能测试之中去,这样将花费你更多的时间精力去学习,是一种事倍功半的效果。

我的存档

数据统计

  • 访问量: 1852
  • 日志数: 7
  • 建立时间: 2008-06-21
  • 更新时间: 2008-06-21

RSS订阅

Open Toolbar