文档章节

“并发用户数”、“系统用户数”和“同时在线用户数”的计算公式

凯文加内特
 凯文加内特
发布于 2016/02/02 17:04
字数 1537
阅读 298
收藏 19

与并发用户数相关的概念还包括并发用户数系统用户数同时在线用户数,下面用一个实际的例子来说明它们之间的差别。
         假设有一个OA系统,该系统有2000个使用用户——这就是说,可能使用该OA系统的用户总数是2000名,这个概念就是系统用户数,该系统有一个在线统计功能(系统用一个全局变量记数所有已登录的用户),从在线统计功能中可以得到,最高峰时有500人在线(这个500就是一般所说的同时在线人数),那么,系统的并发用户数是多少呢? 
        根据我们对业务并发用户数的定义,这500就是整个系统使用时最大的业务并发用户数。当然,500这个数值只是表明在最高峰时刻有500个用户登录了系统,并不表示实际服务器承受的压力。因为服务器承受的压力还与具体的用户访问模式相关。例如,在这500同时使用系统的用户中,考察某一个时间点,在这个时间上,假设其中40%的用户在较有兴致地看系统公告(注意:这个动作是不会对服务端产生任何负担的),20%的用户在填写复杂的表格(对用户填写的表格来说,只有在提交的时刻才会向服务端发送请求,填写过程是不对服务端构成压力的),20%部分用户在发呆(也就是什么也没有做),剩下的20%用户在不停地从一个页面跳转到另一个页面——在这种场景下,可以说,只有20%的用户真正对服务器构成了压力。因此,从上面的例子中可以看出,服务器实际承受的压力不只取决于业务并发用户数,还取决于用户的业务场景。
       在实际的性能测试工作中,测试人员一般比较关心的是业务并发用户数,也就是从业务角度关注究竟应该设置多少个并发数比较合理,因此,在后面的讨论中,也是主要针对业务并发用户数进行讨论,而且,为了方便,直接将业务并发用户数称为并发用户数。 
       1 计算平均的并发用户数: C = nL/T 
       2 并发用户数峰值: C’ ≈ C+3根号C
        公式(1)中,C是平均的并发用户数;nlogin session的数量;Llogin session的平均长度;T指考察的时间段长度。
        公式(2)则给出了并发用户数峰值的计算方式中,其中,C’指并发用户数的峰值,C就是公式(1)中得到的平均的并发用户数。该公式的得出是假设用户的login session产生符合泊松分布而估算得到的。
实例:
         假设有一个OA系统,该系统有3000个用户,平均每天大约有400个用户要访问该系统,对一个典型用户来说,一天之内用户从登录到退出该系统的平均时间为4小时,在一天的时间内,用户只在8小时内使用该系统。
则根据公式(1)和公式(2),可以得到:
               C = 400*4/8 = 200
               C’≈200+3*根号200 = 242 
           F=VU * R / T
其中F为吞吐量,VU表示虚拟用户个数,R表示每个虚拟用户发出的请求数,T表示性能测试所用的时间
R = T / TS
TS为用户思考时间
计算思考时间的一般步骤:
A 首先计算出系统的并发用户数
C=nL / T      F=R×C
B 统计出系统平均的吞吐量
F=VU * R / T R×C = VU * R / T
C 统计出平均每个用户发出的请求数量
R=u*C*T/VU
D、根据公式计算出思考时间
TS=T/R
缺陷检测有效性百分比DDE=TDFT/(TDFC+TDFT)×100%
其中:TDFT=测试过程中发现的全部缺陷(即由测试组发现的),TDFC=客户发现的全部缺陷(在版本交付后一个标准点开始测量,,半年以后)

缺陷排除有效性百分比DRE=(TDCT/TDFT)×100%
其中:TDCT=测试中改正的全部缺陷,TDFT=测试过程中发现的全部缺陷

测试用例设计效率百分比TDE=(TDFT/NTC)×100%
其中:TDFT=测试过程中发现的全部缺陷,NTC=运行的测试用例数

以下公式较适用于白盒测试
功能覆盖率至少被执行一次的测试功能点数测试功能点总数 (功能点)
需求覆盖率被验证到的需求数量 /总的需求数量 (需求)
覆盖率至少被执行一次的测试用例数应执行的测试用例总数 (测试用例)
语句覆盖率至少被执行一次的语句数量有效的程序代码行数
判定覆盖率判定结果被评价的次数 / 判定结果总数
条件覆盖率条件操作数值至少被评价一次的数量 / 条件操作数值的总数
判定条件覆盖率条件操作数值或判定结果至少被评价一次的数量/(条件操作数值总数+判定结果总数)
上下文判定覆盖率上下文内已执行的判定分支数和/(上下文数*上下文内的判定分支总数)
基于状态的上下文入口覆盖率累加每个状态内执行到的方法数/(状态数*类内方法总数)
分支条件组合覆盖率被评测到的分支条件组合数/分支条件组合数
路径覆盖率至少被执行一次的路径数/程序总路径数


本文转载自:与并发用户数相关的概念还包括“并发用户数”、“系统用户数”和“同时在线用户数”,下面用一个实际的例子来说明它们之间的差别。 假设有一个OA系统,该系统有2000个使用用户——这...

共有 人打赏支持
凯文加内特
粉丝 330
博文 667
码字总数 87615
作品 0
青岛
后端工程师
测试知识之软件性能几个主要术语

1、 响应时间: 对请求作出响应所需要的时间 网络传输时间: N1+N2+N3+N4 应用服务器处理时间: A1+A3 数据库服务器处理时间: A2 响应时间=N1+N2+N3+N4+A1+A3+A2 2、 并发用户数的计算公式 ...

anlve
2017/06/03
2
0
并发用户数、吞吐量、思考时间的计算公式

 1、响应时间:对请求作出响应所需要的时间      网络传输时间:N1+N2+N3+N4   应用服务器处理时间:A1+A3   数据库服务器处理时间:A2   响应时间=N1+A1+N2+A2+N3+A3+N4   2、...

chenliqni
2015/12/09
0
0
性能测试知多少---并发用户

在做性能测试的时候,我们常常听到并发用户、响应时间、吞吐量专业术语,也许大家都理解,这里有一个理解的层次与深度概念。最近有看断念《软件性能详解与案例分析》一书,看了他的讲解,原来...

长平狐
2013/03/12
90
0
性能测试中TPS和并发用户数

并发用户数:是指现实系统中操作业务的用户,在性能测试工具中,一般称为虚拟用户数(Virutal User)。 并发用户数和注册用户数、在线用户数的概念不同, 1、并发用户数一定会对服务器产生压力...

hxlb2012
2017/07/31
0
0
系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式

PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。单个reqeust 对CPU消耗越高,外部...

Q317075064
2016/11/08
81
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringCloud SpringBoot mybatis分布式Web应用的统一异常处理

我们在做Web应用的时候,请求处理过程中发生错误是非常常见的情况。Spring Boot提供了一个默认的映射:/error,当处理中抛出异常之后,会转到该请求中处理,并且该请求有一个全局的错误页面用...

itcloud
8分钟前
0
0
c++ std::bind和std::function

定义于头文件 <functional> std::bind 函数绑定,https://zh.cppreference.com/w/cpp/utility/functional/bind // bind 用例#include <iostream>#include <functional> // 自定义的一......

SibylY
11分钟前
0
0
SecureCRT的安装与破解(过程很详细!!!)

SecureCRT的安装与破解(过程很详细!!!) SecureCRT的安装与破解(过程很详细!!!) 使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方...

DemonsI
15分钟前
0
0
介绍几款可用的web应用防火墙

目前有两款,基于软件和基于应用程序的web应用防火墙。基于软件的产品布置在Web服务器上,而基于应用程序的产品放置在Web服务器和互联网接口之间。两种类型的防火墙都会在数据传入和传出web...

上树的熊
22分钟前
1
0
用Visual Studio开发以太坊智能合约

区块链和以太坊 自从我熟悉区块链、以太坊和智能合约以来,一直失眠。 我一直在阅读,阅读和阅读,最后我能够使用一些工具,他们建议使用以太坊网站官方客户端应用程序(Ethereum Wallet)也...

geek12345
24分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部