SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2712|回复: 1

[原创] 性能测试用例

[复制链接]
发表于 2013-5-1 14:38:16 | 显示全部楼层 |阅读模式
某网站性能测试用例
  
某网站提供会员模板下载、上传、购买、支付等功能,目前进入性能测试阶段,通过性能需求可以了解到主要有以下几个性能指标需要进行测试:' A) G. g2 u. L# }" C
  
9 Z% ~) \8 U" |: e: S( V# I    ● 产品页面刷新性能" ], j% b% E( h9 @7 D: h; j
  # e3 \; p: l& o/ C0 z# Y5 c
    ● 产品上传性能
0 X9 L& Z: H$ v  " Z. g) P" b! |; b/ P
    ● 产品下载性能% Q+ o' f! h, L" C3 Z
  
0 _5 W2 V; R' R% ^; Y. n$ C    目前给出的指标为:# d8 R" [' A7 {9 v' }- |; i
  
* z  A! M8 S4 Q* K1 O6 Y  F    延迟:
. T- v5 a3 y3 P+ t- ]9 i. U7 {  
# @$ f( g& X/ S# a" _6 H$ k4 a6 T+ r4 y    测试项         响应时间  抖动   备注
0 H' H0 w/ D+ y  m* A6 g    f7 C$ `2 y% E8 C
    产品页面刷新     <5秒    <2秒
. \( O  Z' l( E) w  ( K: j& D/ [7 M) N
    产品下载相应时间  <4秒     <2秒
% y) p5 R( Q% V4 i5 @! D% [7 q  
$ M- F* R# s7 H    吞吐量:- g% V, k3 O' N2 J& B5 ~
  
: Q' L. b( h+ g, u( M# G0 j    编号                 项                  吞吐量
* a" U$ S' E1 S- d# f) q  
( k( r" j  P& T, X7 D    Perf.T.1 所有登录用户在线状态更改频率  每10分钟1次) e! Z: e7 ^) D" G  W
  $ Y5 I/ `' x$ m& g! F; l; x' h# f
    Perf.T.2 每日页面平均访问量            60000次' t3 }: E$ `- @/ i) f
  
: e- Z# m% i5 G/ P. o- T, S    Perf.T.3 每日下载量                   50000. i9 ?- V: t# \, r! Z8 k: q. x
  " B: C1 O, {. ?& \& `+ p
    Perf.T.4 平均每日新增会员数量           500
( t2 G* }" `4 {% B/ q7 r3 H  ( {4 w' ~1 o9 E# o; s. x
    Perf.T.5 高峰同一模板下载量            100用户并发下载0 i+ N! c5 f; S
  # ~: Q1 p+ `. A9 ]! G2 v
    Perf.T.6 高峰不同模板下载量            150用户并发下载1 y# b! c$ \' [" o
  
2 E& }8 _. v- B5 \/ K8 E2 ^* j& U    容量:  x. P7 K" a4 Z5 v: D8 X- X; @3 @
  / R: ]" _1 L, N
    编号       项            容量  s; P; [) c2 T' f8 d% C/ N
  7 K# W- p% F/ r4 D  |
    Perf.C.1 用户数           <=100万( D& Z- N. Q4 B
  : i0 s/ J8 w8 B1 F; H; V
    Perf.C.2 活动用户数        10000# x, X* ~! k9 `, l& j. I9 M% t) _; s
  ( s7 m5 E/ r) T
    Perf.C.3 模板中心总用户数  <=25万1 |) G1 l1 \. \" v! V; h
  3 Y' m* `0 x" b+ J
    根据如上性能需求及数据我们该如何设计性能测试用例及场景呢?(可以说给出的性能需求很垃圾,没有丝毫价值,但没办法还是点做啊)$ V' D! v% J! h* i' t2 w1 k/ d
  ' c( F( {9 B" |: ~& w
    首先,我不去在乎它要求的性能是什么,我只需要去做在一定的测试环境下对系统进行压力测试,找到各个性能指标的临界点就好了,至于是否达到性能指标,在和性能需求对照编写测试报告即可。3 C: z$ _) V2 U' F/ {( n
  
% I+ b0 f. q1 X    所以,针对这几个需要进行性能测试的页面,我们做一下分析,如何设计场景才能尽可能准确地体现出系统的性能:8 I0 Q) ~2 u7 v9 N9 n0 ^; `
  
( u( j7 G5 i3 L    先说一下搜索页面$ ~2 [: ]2 l" q1 a) T0 J
  4 ]. v- U* U2 u3 w3 z% l
    搜索页面根据对项目的了解,搜索后,将所有符合条件的结果遍历出来,显示在前台,每页的显示数量是一定的,超出的部分分页显示。根据上面的描述我们可以看出搜索结果是在将符合条件的所有结果集均发送到前台页面,对于页面显示对性能的消耗我们可以忽略不计,主要的压力来自数据的传输、sql的执行及应用服务器的处理过程,所以我可以从两个方面设计场景:
2 b; J; D, X! ^  2 A0 t3 ^( I0 r5 V2 o/ X, n) h& I
    a、虚拟用户一定,不同数据库数量级的情况下,搜索的性能
& M! |! [* E4 H- O5 e  
7 B. @! r1 p% L4 y! k* K    如何确定虚拟用户的数量成为一个关键,我们可以让客户提供一个常规情况下每天访问用户数(如果没有实际数据可参考,可以根据产品方案中期望的用户数来代替),我们就用这个用户数来进行测试;再来分析一下不同的数据库数量级,如果系统运营1年的产品数据量是5万条,那么我们就根据这个值分别取1W条、3W 条、5W条、10W条、20W条数据量来进行测试(具体的分法可以根据实际情况而定),所以对于这个测试目标,我们可以设计5个场景进行:3 ~+ ?" P, S. E" D" g
  
" H" y. {3 I- R" Y" ^  B    虚拟用户数 数据库数量级 录制页面 并发用户数执行时间思考时间  Q) I0 C6 |: ^' w  q+ |4 U& e6 \
  + n+ U- m" A% H3 x8 r
    100 10000  搜索页面 随机产生 30分钟 加入思考时间
' G- b. o" I8 t3 J  8 |7 k% y! h% ?/ A% m
    100 30000  搜索页面 随机产生 30分钟 加入思考时间5 C' k4 L: o% ^- e" z
  
' `( o8 |$ h$ G" a4 \  T: v    100 50000  搜索页面 随机产生 30分钟 加入思考时间
9 H( O$ g9 @% R1 O9 W  + z& _: `9 E9 e9 T# ~
    100 100000 搜索页面 随机产生 30分钟 加入思考时间
. R2 g0 G! X+ K7 u. v' V5 \7 {8 [  
- D, K" U1 k8 }/ a7 d1 `    100 200000 搜索页面 随机产生 30分钟 加入思考时间
2 O3 }4 h7 _6 t  
5 v' z& P$ V0 L: ?+ |" q0 J$ K# R    b、一定数据库数量级,不同量虚拟用户的情况下,搜索的性能" @1 Y0 [  D( R  |
  
8 [% G* y* @. y/ v) z    我们定下来一个常规的数据库数据量,在数据量不变的情况下逐步增加虚拟用户数,测试一下不同虚拟用户压力下系统的性能( }+ [8 |7 M  c2 a0 E; ?) B
  ! {7 K) v8 \! H, U: z
    虚拟用户数 数据库数量级 录制页面 并发用户数执行时间思考时间
% A) y5 f3 w  f  
; o3 ?+ w) y6 |+ e, l. l) G/ F  [    50  50000 搜索页面 随机产生 30分钟 加入思考时间
! v- `  F% z: D& N; _9 m) C( p* g  - u, ]' s5 L' s: D* E  @
    80  50000 搜索页面 随机产生 30分钟 加入思考时间! n& f" S  m% n9 w/ T# W+ c1 t' U3 v
  
. ]& k# O% D% `( v& c/ e% g    100 50000 搜索页面 随机产生 30分钟 加入思考时间' a6 W0 v9 y/ l8 _
  
$ l7 \' D( r. y, o! C& P' K    120 50000 搜索页面 随机产生 30分钟 加入思考时间
& Q4 `, Y- @+ `' _  x0 Q  : F1 q4 |, B- {: [* k
    150 50000 搜索页面 随机产生 30分钟 加入思考时间
  s. e# \3 @/ ~0 E  , G* c: P- ^% B8 C
    产品上传
! a6 B1 k% S; Y/ e! W  
9 A# J4 k2 \8 v: ?) v3 c+ \    影响上传性能的主要因素有上传文件的大小和上传的请求数,所以我们就从这两个方面设计用例。* b9 q# A% c. F; a  x% R
  7 }2 s' ?: J6 g, x3 W
    a、虚拟用户数一定,上传不同大小的文件  ~- f$ O" N5 H- G) w  X
  
: p0 [( \, }- M5 ]    虚拟用户数 上传文件大小 录制页面 并发用户数 执行时间 思考时间
1 o6 i- h4 A6 t2 z  ! ?5 D+ h/ O. b5 k+ c
    50 100k 上传页面 随机产生 30分钟 取消思考时间
. {6 w8 d. H% r- X  ) C) ~4 f& M! b9 `. j
    50 300k 上传页面 随机产生 30分钟 取消思考时间
; S+ L# J3 D. f$ U; E  . I7 ^+ J8 D" O
    50 500k 上传页面 随机产生 30分钟 取消思考时间
- _# g. B3 B0 ^. U* {  J  
* b' x7 }+ H) f1 i$ t    50 800k 上传页面 随机产生 30分钟 取消思考时间
% m' j+ {0 c' ?: y! J( W& b  b% Z  
' O7 [0 V" {" c3 R    50 1M    上传页面 随机产生 30分钟 取消思考时间
: ^( }# c  X) B! q+ Q  
1 a( x+ w1 J( r) Q  P+ y" m. x    b、上传文件大小一定,不同量的虚拟用户
" `+ G# k. {& A& E3 D5 C5 n  
  \! C: K# M, d# ~    虚拟用户数 上传文件大小 录制页面 并发用户数执行时间思考时间
( |- U* k! {# [: ]4 [7 D  ) n6 j% {; m! X( b3 M2 }2 B0 z
    20  300k 上传页面 随机产生 30分钟 取消思考时间
. U  Y. P2 s( I1 ^7 w  
- y, d  y6 K7 ]) q0 \- S- o    50  300k 上传页面 随机产生 30分钟 取消思考时间
- f7 C( x1 ^8 \# r8 z/ P% w- p# s! W  * |. q' g' f2 H8 K
    80  300k 上传页面 随机产生 30分钟 取消思考时间( s6 K0 u( D% b9 {0 _, u
  2 o" j+ ?: D, }8 V
    100 300k 上传页面 随机产生 30分钟 取消思考时间
" c; z  B1 y7 r  
, Z2 B; y& V+ [6 L    产品下载" |. m% `5 s& N: E
  
; X/ n% X1 {1 A* M" D0 e: L% t    影响下载性能的主要因素有下载文件的大小和下载的请求数,所以我们就从这两个方面设计用例! j  @' L4 L3 }' F( f: L
  
5 V! n* [+ S8 Y    a、虚拟用户数一定,下载不同大小的文件
: J0 z1 N; m9 h; ?  
9 Z6 p& p$ h  w% l) v; l* i3 o    虚拟用户数 下载文件大小 录制页面 并发用户数执行时间思考时间
3 h8 V, C# n" M( G1 g5 n  5 i5 l3 i3 k" U" }- W: U9 j! |
    50 100k 下载页面 随机产生 30分钟 取消思考时间
9 ]7 ~9 H" S, k  ; j, S' s$ P& f- \8 C  O0 m
    50 300k 下载页面 随机产生 30分钟 取消思考时间
* V( C2 e. E' [* |  O  . t3 N1 d/ ~! X* v3 D4 H* d4 C
    50 500k 下载页面 随机产生 30分钟 取消思考时间
1 r/ ]+ b/ l: l( F8 y  
' Y5 X* N; G3 s: E% b    50 800k 下载页面 随机产生 30分钟 取消思考时间
: B) Z; l6 Q: d5 {' c) h  
: p7 r5 N) p/ |$ W    50 1M    下载页面 随机产生 30分钟 取消思考时间
  h; u: X* ^& }0 r# h; \& n! q  
' B0 Z. Z7 z: V! b$ z    b、下载文件大小一定,不同量的虚拟用户5 t6 [4 X8 G( B/ Y4 L! g
  - ^4 \( K* |: g. F$ T' f1 i1 `" Z( E
    虚拟用户数 下载文件大小 录制页面 并发用户数 执行时间 思考时间
2 t7 i! ^0 C0 ^8 U) K. @4 g; V  
2 e' q& m% C. R5 [' y' I+ w- G  \    20 300k 下载页面 随机产生 30分钟 取消思考时间$ h3 g3 T8 F3 I6 V2 @
  / j3 y6 `  O# U, ]9 E
    50 300k 下载页面 随机产生 30分钟 取消思考时间
; T, T0 V! ~7 c8 X  
% P  G5 @$ X; n% u" }* p  L    80 300k 下载页面 随机产生 30分钟 取消思考时间
; X$ ?( P$ d; v" ]3 Z0 j/ g( h  
; t/ f( P5 O5 n  E7 k, d    100 300k 下载页面 随机产生 30分钟 取消思考时间
  
/ `* K* X. n7 B0 |9 x7 w- i

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
发表于 2016-1-25 13:26:25 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2018-1-22 23:23 , Processed in 0.071433 second(s), 8 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表