测试常用公式

系统用户数,即注册用户数,苛刻一点可以为某一周期活跃用户数.

同时在线用户数,某一时间段内在线用户会话数总和.

并发用户数,粗略说等同于同时在线用户数,引申为核心事务功能或最常用事务功能在瞬间的最大完成会话数量.


服务器实际承受的压力不只取决于业务并发用户数,还取决于用户的业务场景(用户对系统的使用是否集中在少数几个事务功能上)。 在实际的性能测试工作中,测试人员一般比较关心的是业务并发用户数,也就是从业务角度关注究竟应该设置多少个并发数比较合理。

(1) 计算平均的并发用户数: C = nL/T

(2) 并发用户数峰值: C’ ≈ C+3根号C

     公式(1)中,C是平均的并发用户数;n是在线用户数量,L是用户的平均在线时长,T指考察的时间段长度。

     公式(2)则给出了并发用户数峰值的计算方式中,其中,C’指并发用户数的峰值,C就是公式(1)中得到的平均的并发用户数。该公式的得出是假设用户的login session产生符合泊松分布而估算得到的。

=====================================================================

      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=运行的测试用例数

以下公式较适用于白盒测试

    功能覆盖率= 至少被执行一次的测试功能点数/ 测试功能点总数 (功能点)

    需求覆盖率= 被验证到的需求数量 /总的需求数量 (需求)

    覆盖率= 至少被执行一次的测试用例数/ 应执行的测试用例总数 (测试用例)

    语句覆盖率= 至少被执行一次的语句数量/ 有效的程序代码行数

    判定覆盖率= 判定结果被评价的次数 / 判定结果总数

    条件覆盖率= 条件操作数值至少被评价一次的数量 / 条件操作数值的总数

    判定条件覆盖率= 条件操作数值或判定结果至少被评价一次的数量/(条件操作数值总数+判定结果总数)

    上下文判定覆盖率= 上下文内已执行的判定分支数和/(上下文数*上下文内的判定分支总数)

    基于状态的上下文入口覆盖率= 累加每个状态内执行到的方法数/(状态数*类内方法总数)

    分支条件组合覆盖率= 被评测到的分支条件组合数/分支条件组合数

    路径覆盖率= 至少被执行一次的路径数/程序总路径数


### 性能测试常用计算公式 性能测试常用计算公式涵盖了多个关键指标,如吞吐量、QPS、PV、UV等。以下是详细的计算公式及相关说明: #### 1. 吞吐量(Throughput) 吞吐量表示单位时间内系统能够处理的请求数量,是衡量系统负载能力的重要指标。其计算公式如下: \[ F = \frac{NPU \times R}{T} \] - \( F \):吞吐量 - \( NPU \):并发虚拟用户数(Concurrency Virtual User,并发虚拟用户) - \( R \):每个虚拟用户发出的请求数量 - \( T \):性能测试所用的时间[^1] #### 2. 每秒查询率(QPS, Query Per Second) QPS表示每秒的响应请求数,也即是系统的最大吞吐能力。其计算公式为: \[ QPS = \frac{\text{总请求数}}{\text{总时间(秒)}} \] 另一种统计方式为: \[ QPS = \frac{\text{总请求数}}{\text{进程总数} \times \text{请求时间}} \] 此外,峰值QPS的计算公式为: \[ \text{峰值QPS} = \frac{\text{总PV数} \times 80\%}{\text{每天秒数} \times 20\%} \] 其中,80%的访问集中在20%的时间内,这部分时间为峰值时间[^3]。 #### 3. 页面浏览量(PV, Page View) PV表示页面的总浏览量或点击量,每次用户刷新页面即被计算一次。单台服务器每天的PV可以通过以下公式计算: \[ \text{每天总PV} = QPS \times 3600 \times 6 \] 或者: \[ \text{每天总PV} = QPS \times 3600 \times 8 \][^3] #### 4. 独立访客数(UV, Unique Visitor) UV表示独立访客的数量,即一天内访问网站的不同客户端数量。计算公式为: \[ \text{需要的机器数} = \lceil \frac{\text{每天总PV}}{\text{单台服务器每天总PV}} \rceil \][^3] #### 5. CPU使用率 在性能测试中,CPU使用率可以通过以下公式计算: \[ \text{CPU使用率} = 1 - \text{idle比例} \] - idle比例:通过`top`命令中的`id`字段获取。 当`us + sy <= 70%`时,系统运行状态良好[^2]。 #### 6. 内存占用率 内存占用率可以通过以下公式计算: \[ \text{MemUsed\%} = \left( \frac{\text{MemUsed}}{\text{MemTotal}} \right) \times 100\% \] 当内存占用率小于等于70%时,系统内存使用情况良好[^2]。 #### 7. 系统负载率 Linux系统的负载率可以通过`load average`字段查看,显示的是1分钟、5分钟和15分钟内的平均负载情况。 ```python # 示例代码:计算QPS def calculate_qps(total_requests, total_time_seconds): return total_requests / total_time_seconds # 示例代码:计算每天总PV def calculate_daily_pv(qps, hours_per_day=6): return qps * 3600 * hours_per_day ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值