• 0
  • 0
分享

       1、用户并发性能测试用例

       用户并发测试是性能测试的最主要部分,包含了负载测试和压力测试的过程。主要是逐渐增加用户数量来加重系统负担,直到出现不能接收的性能点或者瓶颈。一般要测试正常数量的用户并发和极限数量下用户并发的情况。

       并发用户测试主要是对系统的核心功能和重要业务进行测试,要以真实的业务数据作为输入,选择有代表性和关键的业务操作来设计测试用例。主要编写以下两个方面的用例:

       核心模块的测试:对核心功能模块进行并发用户测试,测试系统是否能够稳定运行。

       例如对于互联网的公用邮件系统,每天早上9点左右可能是收发邮件的高峰,这时候上千的用户都要在上班后进入邮件系统,系统这个时候需要接收和发送大量的邮件。所以邮件系统这一功能模块要进行并发测试。通过测试可以知道数据库服务器、操作系统、网络设备等是否能够承受住考验,同时可以对瓶颈进行分析。

       表1列出来一些常见的参数(表格中的数据为示例的测试用例和测试结果),可以根据实际需要进行增加和删除,其中磁盘I/O、数据库相关测试参数要根据实际情况进行选择,因此没有列出。

功能在线用户达到高峰时,发送和接收普通邮件正常,保证200个以内用户可以同时访问邮件系统,能够正常发送和接收邮件。
目的测试系统200个以内的用户同时在线能否正常发送邮件。
方法采用LoadRunner的录制工具录制一个邮件发送过程,然后利用其完成测试,要监视数据库服务器和web服务器的性能。其中发送的邮件为普通的邮件,附件大小不超过1M.
并发用户数与事务执行情况
并发用户数事务平均响应时间事务最大响应时间平均每秒处理事务数事务成功率每秒点击率平均流量(字节/秒)
1001.3442.0785100%1025177
并发用户数与数据库主机
并发用户数CPU利用率MEM利用率磁盘I/O参数DB参数1其它参数
10023%11%
并发用户数与应用服务器的关系表
并发用户数CPU利用率MEM利用率磁盘I/O参数
10032%27%

表1 核心模块的性能测试用例

       在编写这类用例时,要进行综合分析,选出系统中的各个核心模块,分别设计每个模块的测试用例:把模块划分成小的“事务”进行测试,这样在测试分析中便于定位问题究竟出现在哪里。例如邮件系统可以划分成:接收邮件、发送邮件、打开邮件等小的事务进行测试用例的编写,每个操作做为一个用例来执行。

       2、网络性能测试

       网络性能测试主要是为了准确展示带宽、延迟、负载和端口的变化是如何影响用户的响应时间的。在实际的软件项目中,主要是测试用户数目与网络带宽的关系。

       编写用例的格式如表2 (表格中的数据为示例数据):

目的测试系统运行网络在不同并发用户条件下的使用情况
方法在不同的广域网带宽下(例如256K)使用LoadRunner录制邮件系统的相关事务操作脚本,以不同的并发用户数进行测试,记录各种用户连接数下,不同并发请求的性能变化;同时记录路由器端口的流量和其他数据。
运行时间10小时
用户并发数事务平均响应时间服务器端口流量丢包率
1002.81650.2M/S0.001%
5003.87698.2M/S0.002%

表2 网络性能测试

       本部分可以独立测试,也可以和用户并发性能测试、疲劳强度与大数据量性能测试结合起来,在原有的基础上采用工具来调整网络设置,从而达到监视网络性能的目的。通常网络性能都是采用工具进行性能评估,由系统集成工程师来进行。


作者:板栗+

原文链接:https://www.cnblogs.com/jane4321/p/11013125.html


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •        此文讲述了我和腾讯蜜汁缘分。       我在腾讯截至投递简历的前十几分钟填完了简历,以至于我报错岗位了。我想去的是测试开发,却报成了软件测试。       紧接着,我收到了笔试通知。在笔试的模拟测试中,共有2种类型的题目:不定项选择题26分,填空题24分。囊括的知识点很广,有linux,操作系统(页面替换题,进程线程),数据结构,计算机网络。       在正式笔试的时候,考的跟模拟题完全不一样!可能因为我是软件测试而不...
            0 0 2191
            分享
          •   经典软件测试课程免费送,点击下方链接填写测试行业调查问卷,即刻领取,还有机会获得精美测试大礼包~链接:http://vote.51testing.com/   自动化战略  在查看工具的许多选项和构建概念证明之前,第一步是问“为什么”这个问题。  可以说,启动UI自动化项目的最常见原因是“回归测试花费的时间太长”。每个版本,他们有一周的时间开发新功能,然后将新代码交给测试人员,然后有一周的时间对新工作进行测试和错误修复。当一切都完成后,仍然需要有人做一些调查,希望能发现最近所有的代码变动是否引入了任何令人惊讶的问题。最后一部分,回归测试,要么花费太长时间,要么时间紧迫。这就是有人想到所有实...
            0 0 1384
            分享
          •   这两天一个比较热门的话题,就是OpenAI在6月25日宣布其研发的人工智能OpenAI Five,在受限条件下,Dota2 5V5团战能够战胜人类。从去年10月19日DeepMind发布AlphaGo Zero,经过短短的半年多时间,人工智能已经从单打独斗的围棋游戏跨越到需要团队协作、战术安排的Dota游戏,人工智能技术的发展开始加速。   AlphaGo Zero使用了64个GPU工作站(每一个都有多个GPU)和19个CPU参数服务器(每一个都有多个CPU)进行训练,并使用4个TPU进行比赛时的执行。OpenAI Five使用了12800...
            1 1 1820
            分享
          • 最近在项目过程中使用selenium 判断元素是否存在的时候 遇到一个很坑爹的问题,当某些元素不存在时,页面可能出现响应很久的情况,以下是本人总结的webdriver处理页面等待时间的几种方式:1、显式等待显式等待,就是明确的要等到某个元素的出现或者是某个元素的可点击等条件,等不到,就一直等除非在规定的时间之内都没找到,那么就跳出Exception。/** 设置元素等待时间 @param driver @param by @param timeOut //等待时间,以秒为单位 /public static void wait...
            0 0 790
            分享
          •   有没有独立搭建过自动化测试框架?  这个问题我觉得可能是大家最怕面试官问到的问题,自动化测试框架,对吧。比如说你像问一下三种等待时间的区别和场景应用这一类问题,你去百度一下,问一下身边做软件测试的朋友也能知道,其实有些问题其实是比较抽象模糊的概念。有没有标准答案?我们该怎么去说服面试官。  这个问题,今天我来和大家总结一下!  这个问题有遇到过的朋友欢迎在评论区留言,说一说你当时是怎么回答的。  我相信这个问题肯定是有同学遇到过的。  一些对自动化测试框架不是很了解的同学,在面试的时候可能会吞吞吐吐的说,呃~我有搭建过。用过Selenium然后去做了一些简单的自动化测试。然后没有然后了,像...
            0 0 911
            分享
      • 51testing软件测试圈微信