zoukankan      html  css  js  c++  java
  • 性能测试心得之一

    以前做过一些山寨版性能测试,我都说了,是山寨么,当然不正规,不过,现在有多少企业的测试流程是正规的能,何况性能测试的流程呢。这是现状,也是机遇。这次因为项目需要,要做一个比较正规的,而且有一定难度的性能测试了。B/S, C/S,接口性能,都涉及到,对自己也是个挑战和提高。

    这一个星期主要做需求理解和性能需求分析,然后写性能测试计划和测试用例。发现了很多问题,总结如下:

    需求分析问题:

    1.刚开始最好不要上来就跟客户谈,某个性能点需要什么样的指标,比如支持多少人同时登陆,等等。一上来最主要的事情是了解整个系统的作用,用户,部署的方式,约束,上线时间,等等,目的是让自己能慢慢的站在客户角度来看待这个系统,通过自己的知识,想客户所想,忧客户所忧,因为我们的目的就是要让客户满意么。
    注意性能测试场景选择的原则:
    a,
    重要的(业务上),
    b.
    重复的(最常用的模块),
    c.
    重量级的(消耗大量系统资源的)
    具体性能指标分为几类类:
    a.
    系统容量(数据容量、用户量、并发用户量),
    b.
    系统并发度指标(注册用户、在线用户、并发用户),
    c
    ,响应度指标(正常压力下响应能力、峰值压力下的响应能力,以及异常压力下的响应能力) 

    2.理解整个系统及其实现之后,再列出自己分析得到的性能需求点。

    3.询问客户的具体性能需求,共同分析,是否测试,测试的优先级。

    4.写出性能测试计划和用例,并要得到客户认可。

    性能测试策略:

    1.单一性能点,多用户测试。测试过程可以隔离测试性能场景,先单独测试加压每种性能需求点,比如用户登陆,可以单独模拟此需求,建立比如50人并发登陆的场景。但此种场景并非是用户实际使用情况,不可能有个系统大家只是在拼命的登陆,而不作其他事情。但是,如果在做别的事情,那么同时再有50人并发登陆的话,那这个登陆时间会大大的延长的。所以此场景的设计仅仅为了检查这一个模块的性能水平。

    2.隔离之后,再逐步建立混合的性能场景。比如登陆的同时有人在浏览、查询、写入系统。但是此时只加载20%的负载。这一步主要是一个集成测试,考虑各个功能模块之间是否有影响,是否有对某些资源的抢夺等问题。同时找出Top Time Transaction

    3.如果上一步没问题了,这次就加压100%,看看在真正我们规定的要求下,系统各项性能指标如何,同时对本次测试结果作为Base Line,用来性能调优之后的比较。

    4.压力测试,看系统的最大负载能力。

    性能测试能力问题

    Loadrunner是性能测试一个非常好用,同时也比较复杂的工具。经过这么一段时间的学习和使用发现其难点在于:

    1,脚本录制和开发,怎么写这个东东,比如怎么样让日志输出合适的信息,对于后期分析有很重要的意义,这些都会有些开发能力要求。

    2如何设计测试场景,最大程度的模拟用户需求,这个有挑战,是对需求理解的挑战,对整个系统设计和实现的理解,如果知道的东西很少,那理解起来就很费力,也不容易把握住重点,这个功夫也在LR之外。

    3,性能测试出来之后,结果如何分析,呵呵,这个更是挑战了,挑战来自什么的?我觉得这个也不是来自LR本身,而是来自对数据库操作系统、中间层和这个被测系统本身的理解。这个应该是最难的。调优,在哪个行业不是是最难的啊?单独一个Oracle,  SQL Server调优那需要DBA多长时间的积累啊,何况我们需要懂的不仅仅是数据库。当然这个阶段可以找DBA来帮我们分析解决问题。这个要求也是在LR之外的。

    所以,性能测试工具本身并不是最大难点,学会使用工具也仅仅是个起点。能做好性能测试人的本事最主要也不是在如何熟练的使用LoadRunner,或者JMeter,主要的是对系统的理解和掌控,一种大局观。我自己感觉,自从这几个月比较深入的学习OracleLinux之后,对性能的理解越来越深刻了,测试过程会有计划有目标的选取某些数据,执行某个过程,不像以前仅仅是个表面的照葫芦画瓢,尽管测试完了,但却总是感觉心里不安。

    发现这个世界,道理都是相同的,你越是想搞钱,越是难搞到钱,即使有,也都不会是大钱。为什么呢?因为能赚多少钱,这个东西,不在钱本身,而在钱之外。我想当年Bill、李嘉诚也没想自己一定要赚多少多少钱吧,他想的是怎么把这个事情做大、做好、做强吧,要不然他们也不会有钱之后,又投入这么大把的钱到慈善事业上的了,李嘉诚可是放弃了1/3啊!不像国内的某些企业家仅仅做个样子而已。扯远了……性能测试似乎也是这样,能力在性能测试之外。所以说吧,做什么都要放大视野,这样道路才会更宽!

  • 相关阅读:
    Beta版软件说明书
    团队项目第五天
    cnblogs用户体验评价
    团队项目测试计划
    Alpha版总结会议
    软件使用说明书
    团队绩效考核
    各个小组对于“我爱淘”的评价
    软件工程团队项目评价
    丹佛机场行李系统处理方案
  • 原文地址:https://www.cnblogs.com/igubai/p/7426168.html
Copyright © 2011-2022 走看看