zoukankan      html  css  js  c++  java
  • 性能测试方法--举例说明

    《西游记》中有一场景叫做:“猪八戒背媳妇”,下面我们就以这个来打比方向大家描述几种性能测试方法的异同点。

      我们将猪八戒同志作为性能测试的被测试对象。

      负载测试:猪同志身上背着的高小姐可以被视为加在“猪八戒人猪混合系统”上的负载。当然了,猪八戒身强体壮,背个高小姐应该是问题不大的。负载测试就 是让猪八戒背着高小姐走路(这里的走路就是一定得系统行为,通常这种系统行为通过脚本来进行模拟),我们观察猪八戒的生理和心理指标是否存在异常从而断定 “猪八戒人猪混合系统”的瓶颈所在。如果猪八戒背着背着腰酸背疼腿抽筋,那么猪无能同志可能是缺钙了,需要补钙;如果他背着背着头晕眼花四肢麻木,那么猪 同志应该是脂肪肝、酒精肝三高患者的杰出代表,这就证明猪八戒需要减肥了。如果猪八戒背着小媳妇身轻如燕、健步如飞,那么我们可以判断猪八戒同志是个好同 志,“猪八戒人猪混合系统”是个好系统。当然,这只是在没有测试标准的衡量基础上得到的结论,为了更进一步的测试“猪八戒人猪混合系统”,我们需要给这个 系统一些指标,这个指标举例如下:背着体重为45公斤的高小姐走上一段山路十八弯总长为10公里的羊肠小道,在此过程中猪八戒同志的平均时速不能低于 8km/h,其心跳不能快于60次/秒。好吧,再进行一次测试,我们发现在测试过程中猪八戒同志依然健步如飞,身轻如燕,但是其心跳却高于60次/秒。于 是在猪八戒同志心跳高于60次/秒的那一刻,我们可以停止测试,帮猪八戒同志找出瓶颈,待此瓶颈问题被解决后,我们再对其进行测试。当然,如果猪八戒一背 上高小姐就显得异常吃力,举步维艰,那么我们可以认为高小姐应该减肥了(负载过大),我们应该让高小姐节食一段时间,体重达到正常标准后再进行测试。以上 就是负载测试的一个通俗例子。

      压力测试:还是猪八戒同志背媳妇。我们发现他一次背一个媳妇异常轻松,于是乎我们必须加大负载,让猪八戒在极端的情况下进行背媳妇活动。我们可以让猪 八戒同志一次背10个媳妇,当然这并不符合一夫一妻制,因此我们选择让猪八戒同志来背孙悟空同学。孙同学是石头里蹦出来的,所以密度大,质量大,符合极端 负载的标准。

    测试开始了,猪同志背上孙同学立即大汗淋漓、哭爹喊娘。好了,极端负载的条件达到。我们可以观察猪八戒的表现以确定猪八戒同志全身最薄弱的部位了。 如果我们发现猪八戒同志腹部力量不足从而导致背孙同学极度吃力,那么我们可以让猪八戒去练腹肌,让他的腹部力量得到增强。这样我们也找到了系统的瓶颈,对 系统进行了优化。

      如果猪八戒背上孙悟空依然轻轻松松,神情自若,那么我们可以猜测猪八戒背的孙同学不是孙悟空而是孙尚香。于是我们可以选择更大的负载进行测试。

      压力测试一定要测出来问题,否则我们有理由认为压力负载过小,不符合测试要求。

      并发测试:主要是测试猪八戒一次能背几个媳妇。如果“猪八戒人猪混合系统”的设计目标是“一次至少背上三到四个高小姐”的话,我们就有尺度来衡量猪八戒的表现是否达标。

      基准测试:如果猪八戒同志在被高小姐的时候没有服用任何的违禁药品,那么我们可以将此次的测试结果作为一个基点,然后让猪八戒同志喝点红牛或者是嗑点小药,然后进行同样的负载测试,查看药物或者是喝红牛对猪八戒背高小姐这个行为是否产生了利弊影响。这里的喝红牛可以指的是软件更 换了一种新算法,也可以理解系统更换了新的中间件。当然我们也可以不让猪八戒同志背高小姐,而换成是让孙悟空同学背高小姐,观察这两次测试的测试结果,从 而确定究竟那一种系统更能胜任“背高小姐”这个重任。

      稳定性测试:让猪八戒背高小姐背上七七四十九天,观察猪同学的表现。若“猪八戒人猪混合系统”的设计要求为至少能连续背高小姐走上49天,而实际猪八戒只走了36天的话,我们可以认为“猪八戒人猪混合系统”不达标,需要优化。

      可恢复性测试:先让猪八戒背孙悟空同志走上半天,此时猪八戒已经累得接近崩溃,然后再让猪八戒背上高小姐,查看猪八戒是否能从疲劳中恢复,从而担当起背高小姐的重任。

    越努力,越幸运! 转载请注明出处,商用需征得作者同意,谢谢!
  • 相关阅读:
    android 开发 View _3_ View的属性动画ValueAnimator
    android 开发 View _2_ View的属性动画ObjectAnimator ,动画效果一览
    android 开发 View _1_ View的子类们 和 视图坐标系图
    android 开发 ScrollView 控件的一些api描述与自定义ScrollView接口回调方法
    android 开发 我的高德地图代码例子
    android 开发 singleTask启动模式下传值的坑
    android 开发 时间选择器TimePicker的使用
    android 开发 实现一个activity变成dialog对话框
    android 开发 实现一个ListView套嵌GirdView的滚动布局
    android 开发 使用自定义布局实现标题栏复用(标题栏内容自定义:使用代码实现和xml布局自定义属性2种办法实现)
  • 原文地址:https://www.cnblogs.com/jane4321/p/11012968.html
Copyright © 2011-2022 走看看