51Testing软件测试论坛

标题: 再次思考下来的见解.....盼您点评 [打印本页]

作者: ww_testing    时间: 2006-3-8 14:19
标题: 再次思考下来的见解.....盼您点评
Analysis 分析结果中的Summary Report下的Transaction Summary表中有这么几项

Transaction name  Std. Deviation   90 Percent  pass     fail     stop

transaction1            0.157      0.016   

transaction2            0.009                      0.04
              
希望老师解释一下Std. Deviation  、90 Percent  、stop的含义!一般什么情况会影响这几个值?

而对于Pass  和fail ,为什么有时pass数不等于加载的用户数,而对应的Fail数却为0,如以下(加载的Vu数为100):

Transaction name  Std. Deviation   90 Percent  pass     fail     stop

transaction1            0.157       0.016   45  0

transaction2            0.009                      0.04    100       0

这作何解?

[ 本帖最后由 ww_testing 于 2006-3-10 09:57 编辑 ]
作者: pcl2004_27    时间: 2006-3-8 21:56
请注意,你看到的是什么?transaction的成功失败

例如:
int (空函数)
action(假设你这里有两个事务函数)
{
     假设代码
     事务函数-1
    web url()
    事务函数-1
    事务函数-2
    web_submit_data
   事务函数-2
   
   
}

end(空函数)

你设置了define each action as a transaction还有 define each step as a transaction,然后场景中模拟了100个用户,那么我们计算一下
第一define each action as a transaction 影响: Int action end都会作为一个action作为计算 也就是 100*3
第二  define each step as a transaction 影响 你的action里面的都有两个步骤,这两个步骤都是一个请求,那么就是 100*2
第三 事务函数还有两个,那么就是100*2
剩下的总共成功就是100个虚拟用户要产生  100*3+100*2+100*2 个事务

这就是事务和虚拟用户不等的原因!
作者: pcl2004_27    时间: 2006-3-8 22:33
std,90 percent 这些都是离散数学中的东西,他们具体的计算你可以看下边这个网页


http://www.bjmath.com/bjmath/Stats/sd.htm
作者: ww_testing    时间: 2006-3-9 09:28
哦,我应该记住这个概念,是指事务的Pass和Fail,之前我老是把用户的概念灌输进来了。

到目前我还理解为,100个用户对一个事务函数产生100个事务(您上面说:事务函数还有两个,那么就是100*2),

那它对应的是Pass数+Fail数=100?而怎么出现如上面:Pass为45时,Fail为0,那另外的55个事务的状态呢?
作者: pcl2004_27    时间: 2006-3-9 22:23
同学 你弄错概念了

到目前我还理解为,100个用户对一个事务函数产生100个事务(您上面说:事务函数还有两个,那么就是100*2),

脚本1

action
{
  action(假设你这里有两个事务函数)
{
     假设代码
     事务函数-1(lr_start_transaction(1))
    web url()
    事务函数-1(lr_end_transaction(1))

    事务函数-1(lr_start_transaction(2))

    web_submit_data
   事务函数-1(lr_end_transaction(1))

   }

脚本2
action
{
  假设代码
     事务函数-1(lr_start_transaction(3))
    web url()
    事务函数-1(lr_end_transaction(3))
}
你在controller中设置(一个场景有多个脚本) :
你controller中有几套脚本?
假设脚本1 55个虚拟用户
脚本2 45个虚拟用户

你出来的transaction的图是汇总的图

                         pass
transaction 1     55
transaction 2    55
transaction 3     45

他和你的虚拟用户数有关系,和你的设置有关系,几个累加影响之后一起计算的。
作者: ww_testing    时间: 2006-3-10 09:01
我上面所说的情况,都是基于一个脚本所产生的事务。对于这一个脚本我加载的是100个用户。不过这也跟您前面所说,我应该多测试几个结果进行比较,什么情况下才会是这样的。。。谢谢老师指点。
作者: ww_testing    时间: 2006-3-10 09:56
朴老师,对于以上问题有一位同事启发了我。现在说说我的一些见解,不知是否合理。

以下先粘上一张图,以此图所示来说:(见附图1)

这个测试结果是在加载 120个Vu 运行 一个脚本 的场景下得出的。设置的运行方式是Thread,action和  step同时选中。

对于end_transaction和init_transaction两个action中没有任何操作。所有操作分别录制在Login  、user_databases

和Logout三个手工定义的action中。如图所示,当i_security_check_login_24出现28个Fail时,对于下面一些与之关联

的transaction就不会再进行下去,而这个i_security_check_login_24是处于Login这个action中的 '  登录 ' 事务函数中 的,

所以对这个Login 和 '登录 ' 也是28个Fail。

在整个运行其间,92个用户是畅通无阻的运行完毕整个场景。

本次测试的结果是不是可以说明,系统的最大用户数为92?

[ 本帖最后由 ww_testing 于 2006-3-10 10:46 编辑 ]
作者: pcl2004_27    时间: 2006-3-11 23:20
可以这么理解!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2