低调~低调

发布新日志

  • Top Ten Failures in LoadRunner Performance Testing

    2011-01-27 16:47:11

                                 

       Top Ten Failures in LoadRunner Performance Testing

    ---原文地址:http://www.loadrunnerbythehour.com/LoadRunnerPerformanceTesting

    1. Failure to define performance requirements for LoadRunner performance testing - Without performance requirements you don’t know when your system is performing as needed. Performance requirements define a goal and a reason for LoadRunner Performance Testing.

    2. Inadequate LoadRunner Performance Tool skills - Somebody with LoadRunner scripting skills does not make a skilled performance test engineer. A skilled performance test engineer is more than just a tool mechanic; they know system architecture, software engineering, computer networking and database design. They have good problem solving skills and know how to TEST a system. They know how to analyze test results to find bottlenecks and give suggestions for fixing the performance issue.

    3. Failure to use enough performance test data - Issues occur when the data used for parameters does not vary enough to test the database. Issues also occur if the database isn’t populated in a way that mirrors production

    4. Failure to properly estimate the duration all tasks of LoadRunner Performance Testing - Besides not having an appropriate model for estimating the level of effort for completing steps of LoadRunner Performance Testing, frequently project managers influence the LoadRunner Performance Testing schedule in a way that may not work for LoadRunner Performance Testing project.

    5. Failure of Management to understand what you do, but telling you how to do it and how long it should take. This is a classical fail point for many a LoadRunner Performance Testing effort.

    6. Failure to effectively analyze bottlenecks - Many LoadRunner Performance Testing teams do not have people with effective bottleneck analysis skills on staff. Testing has very little benefit if the team is unable to determine success or failure and when a test does fail, why?

    7. Hired based upon price rather than skills - Although organizations would not consider a developer or project manager based purely upon price,this happens quite often in test areas. An organization which hires just based upon price generally has no idea on how to judge the deliverable of the LoadRunner Performance tester

    8. Failure to effectively interview performance test engineers because you have no interview skills in house. Often interview are asked based upon questions found on the Internet with the candidate parroting answers from the same sites,often including incorrect answers that neither interviewer or candidate are aware of.

    9. Failure to allow a performance test engineer to specialize and focus on performance testing - Asking functional testers or developers to be performance testers is not a good strategy for producing high quality LoadRunner performance testing results.

    10. Failure to train. Excellent performance engineering staffs are always encountering leading edge technologies in use by developers. Performance Engineers require the same level of detailed architectural level training as do developers in order to be effective in their roles as LoadRunner Performance Testers.

  • 新的挑战

    2009-10-10 12:34:23

        2009年10月9日我递交了辞职报告,记得去年的这一天是我进入公司的第一天。
        我准备去深圳,去迎接新的挑战。
             深圳我来了!!!
        不管前面有多困难,我还是要继续前进,因为那是我选择的道路。
       
  • 测试流程与测试过程的区别

    2009-09-25 15:21:07

          当你应聘时,是否会被问到“请介绍一下你们的测试流程,流程和过程有什么不同,为什么好的测试需要好的流程?凡做过12年测试的人都能说出他们先做什么后做什么,但是当考官继续问这是否可以叫做过程?流程和过程有什么差别,应聘者早己一棒子被打晕,继续追问为什么好的测试需要好的流程的时候,早已经找不到东南西北了。(此段转载自seventest的51Testing空间
     
            首先需要理解什么是流程?什么是过程?二者的区别在哪?

          
    “过程”是描述一件事情的来龙去脉的,较为广泛用于任何事情的描述。一般没有“应该怎样必需怎样”的意思。
          “流程”则是一个用于描述工艺顺序的词,指为做某件事情某个产品等规定的配套先后顺序。
       
           流程就是多个人员、多个活动有序的组合。它关心的是谁做了什么事,产生了什么结果,传递了什么信息给谁
         
           流程强调的是做事情的逻辑,活动的线路。过程则是做事情的进程。不管理采用什么流进行,都存在过程与结果。
           无论我们干什么事,无论在生活、休闲还是工作中,都有一个“先做什么、接着做什么、最后做什么”的先后顺序,这就是我们生活中的流程,只是我们没有用“流程”这个词汇来表达而已。

           打个形象的比喻:你要从上海到北京。 

           流程就是:你是去北京的线路:是直线?还是曲线,折线?

           流程管理就是:要找到最短线路的行程,同时保证能够到达目的地,且总成本最小。

           过程就是:从你离开上海到达北京之前的这段时间,你所发生的事情。

           过程管理就是:不要等到了北京后才发现误事了,超支了。在途中要不断的检查,纠偏。

           相信以后对于这两个概念不会再这么模糊了。

  • 什么是用例

    2009-09-25 11:53:34

                             
    来源:blog.csdn  原作者:coffeewoo    

        用例是什么?其原始英文是usecase,直译过来就成了用例。这也是一个比较贴切的叫法了,从字面的直接理解就是使用的例子。另一种比较流行的定义是用例就是与使用者(actor)交互的,并且给使用者提供可观测的有意义的结果的一系列活动的集合。

      这个定义还是比较费解的,笔者在众多应聘者中发现很多使用用例来做需求的系统分析员,有的已经使用了两年以上,但仍不能把握用例的本质,虽然他们号称精通UML。

       最具普遍意义的理解错误是认为用例就是功能的划分和描述,认为一个用例就是一个功能点。在这种理解下,用例变成了仅仅是较早前需求中功能框图的翻版,很 多人用用例来划分子系统,功能模块和功能点。如果这样,用例根本没有存在的必要。有意思的是,造成这种理解错误的相当一部分原因却是因为对OO思想的理解 不够深入,本质上说,把用例当成功能点的系统分析员脑子里还是面向过程的那一套思想,虽然他们在使用OO的工具,OO的语言,号称在做面向对象的开发,但 过程的影子还没有从他们脑子里彻底抹去。

      如果用例不是功能的话,它是什么呢?从定义上说,能给使用者提供一个执行结果的活动,不就是功 能吗?我的回答是:错!功能是计算机术语,它是用来描述计算机的,而非定义需求的术语。功能实际描述的是输入-->计算-->输出。这让你想 到了什么?DFD图?这可是典型的面向过程分析模式。因此我说把用例当做功能点的分析员实际在做面向过程的分析。

      而用例则不是计算机术 语,UML除了在计算机行业中应用,它也经常被应用在其它行业中。用例是一种需求方法学,虽然软件危机和OO的发展促成了它的诞生并被完美的融合进了OO 体系,形成了 UML,但它实际上并不是软件行业的专用品。如果非要从功能的角度解释,那么用例可以解释为一系列完成一个特定目标的“功能”的组合,针对不同的应用场 景,这些“功能”体现不同的组合方式。实际上,把用例解释为某个参与者(actor)要做的一件事可能更为合适。这样的一件事有以下几个特征:

       一、这件事是相对独立的。这意味着它不需要与其它用例交互而独自完成参与者的目的。也就是说这件事从“功能”上说是完备的。读者可能会想到,用例之 间不是也有关联关系吗?比如扩展,比如实现,比如继承,它看上去并不是独立的嘛。关于这个问题,笔者会在后续的文章里详细说明。这里稍微解释一下,用例之 间的关系是分析过程的产物,而且这种关系一般的产生在概念层用例阶段和系统层用例阶段。对于业务用例,这个特征是很明显的。

      二、这件事 的执行结果对参与者来说是可观测的和有意义的。例如,系统会监控参与者在系统里的操作,并在参与者删除数据之前备份。虽然它是系统的一个必需组成部分,但 它在需求阶段却不应该作为用例出现。因为这是一个后台进程,对参与者来说是不可观测的,它应该在系统用例分析阶段定义。又比如说,登录系统是一个有效的用 例,但输入密码却不是。这是因为登录系统对参与者是有意义的,这样他可以获得身份认证和授权,但输入密码却是没有意义的,输入完了呢?有什么结果吗?

       三、这件事必须由一个参与者发起。不存在没有参与者的用例,用例不应该自动启动,也不应该主动启动另一个用例。用例总是由一个参与者发起,并且满足特征 二。例如从ATM 取钱是一个有效的用例,ATM吐钞却不是。因为ATM是不会无缘无故吐钞的,否则,我从此天天守在ATM旁,生活无忧矣。

       四、这件事必然是以动宾短语形式出现的。即,这件事必须有一个动作和动作的受体。例如,喝水是一个有效的用例,而“喝”和“水”却不是。虽然生活常识告 诉我们,在没有水的情况下人是不会做出喝这个动作的,水也必然是喝进去的,而不是滑进去的,但是笔者所见的很多用例中类似“计算”,“统计”,“报表”, “输出”,“录入”之类的并不在少数。

        除去以上的特征,笔者觉得用例的含义还要更深些。首先,用例的背后是一种需求方法论。其核心是以参与者为中心(区别于以计算机系统为中心),从参与 者的角度来描述他要做的日常工作(区别于以业务流程描述的方式),并分析这些日常工作之间是如何交互的(区别于数据流的描述方式)。换句话说,用例分析的 首要目标不是要弄清楚某项业务是如何一步一步完成的,而是要弄清楚有多少参与者?每个参与者都做什么?业务流程分析则是后续的工作了。其次,用例简直就是 为OO而生的,其思想完美的符合OO。用例分析方法试图找到问题领域内所有相对独立的参与者和事件,并把业务流程当成是这些参与者和事件之间的交互结果 (在UML用活动图或序列图来描述)。因此,用例方法被吸纳到OO之后,UML得以以完备的形式出现,用例成为了真正的OO核心。在 RUP里,这种核心作用被发挥到极致,产生了用例驱动(usecase driven)的软件过程方法,在RUP里,软件生产的所有过程和产物都是围绕着用例形成的。

      可以说,用例分析是OO的第一步。如果用 例分析本身出了问题,对业务架构,软件架构的影响是很大的,将大大削弱OO的优势--复用、扩展。笔者认为软件复用可以分为三个层次,最低层次的复用是代 码级复用,这是由OO语言特性提供支持的,例如继承,聚合,多态;较高层次的复用是组件级复用,这是由设计模式提供支持的,例如Factory模式, Builder模式;最高层次的复用则是服务级复用,这在很大程度上是由应用服务器和通讯协议来提供支持的,例如最近炒得火热的SOA(面向服务的应用) 架构。用例分析的好坏也许对代码级和组件级的复用影响不太大,但对服务级的复用影响却是巨大的。笔者认为服务级复用是OO的最高境界,而结构良好的用例分 析则是达到这一境界的基础。

      观后感:原作者是从OO系统分析员的角度出发,本文值得我们软件测试员对测试用例的一个全新的认识。


Open Toolbar