51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2502|回复: 1

loadrunner模拟多用户打BOSS压力测试(网页游戏)

[复制链接]

该用户从未签到

发表于 2018-4-28 11:15:58 | 显示全部楼层 |阅读模式
测试工具:loadrunner

测试环境:某网页游戏压力测试

测试案例:600个玩家打BOSS


测试过程:
一、配置BOSS出生。
    将BOSS出生点设置到在南京-木头。这里只能设置到城市,在哪个点,需要刷一下BOSS的位置,因为以下脚
本录制是打木头这个点。

二、loadrunner录制脚本。
1.启动loadrunner录制脚本
  1)新建web脚本。 file >> new >> 选择web (HTTP/HTML)
  2)在弹出窗口填写要测试的游戏服地址(URL Address),其它的使用默认选项即可。                            

  3)完成后跳到游戏登录界面,输入帐号登录。(最好使用帐号,比较有规则一点,方便使用批量类似的玩家,
如acname21051)

  4)操作角色去打BOSS。(这里需要注意,默认玩家是开启和平状态的,这里有切换到杀戮状态的操作,否
则打BOSS可能会失败)
  5)打完BOSS退出,按录制停止键。

2.确认脚本能够重复运行。
  录制完成后,进步任务第二步replay,重播一下是否脚本能够正常打BOSS。
  获得BOSS战利品才算完成,如果只是杀过去了,没有获得奖励,那肯定是某个地方出错了。
    测试过程中有两种情况会导致不能获得奖励:1)玩家没有开启杀戮状态。2)脚本将忽略操作过程中的思
考时间忽略掉了,打BOSS是有时间控制的,必须保留操作思考时间。(设置方法:按F4,在Think Time栏,选
中Replay time / As recorded)

3.批量模拟玩家打BOSS。
  1)按快捷菜单栏的Tree键查看树脚本。
  2)找到Submit Data:index.php 分支,双击。
  3)会弹出属性框,包括选项nickname,accountname,up,双击accountname后面的ABC按钮.(如果使用角色
登录则用nickname)
  4)新建一个变量,在名字栏填写acname
  5)点击属性选项,进入变量设置。
  6)按Create Table按钮,确认建立一个列表。
  7)现在可以在表格里面填写你要登录的批量帐号,这里可以点下面的Edit with notetpad可以用文本操作,
批量写入一批帐号即可。
  8)关闭属性窗口,回到建立变量窗口点OK.
  9)这时回到变量列表窗口,accountname的value值,已变成了{acname},表示这里提交数据,将这个变量使
用不同的值去登录游戏。

5.定义打BOSS事件,方便监测数据。这里有三个接口事件:打BOSS前处理,战斗,打完后处理。
  1)查看一下事件所在的支点,一般在最后的几个PHP调用接口,例如这里最后三个PHP请求事件是gateway.p
hp_13,gateway.php_14,gateway.php_15。如果找不到,就搜索BossBattleStart,BossFight,BossBattleFinish,
找到相应的支点吧。
  2)在这三个支点前后分别加入事务开始和结束标志。

6.保存脚本为s7236_boss。

三、运行压力测试。
1.打开loadrunner >> Run Load Tests
2.新建一个测试( file >> new ),选择manual Scenario确认。
3.增加用户组(Add Group),组名随便定义 ,将人数设置为600,Load Generator Name设置为locahost,下面选择为
s7236_boss选项。
4.在Global Schedule窗口,设置启动用户和结束用户量。这里指多少时间启动或停止多少用户。
5.设置完成就可以点击播放按钮,开始压力测试。

四、测试结果分析。
  在客户端,可以查看请求数据的各种状态,包括之前定义事务的响应时间,每秒点击数,每秒有多少用户
在操作。
      在服务端,可以实时查看,有多少数据库操作正在运行(/root/mysql_processlist),如果很多进程在等待,
实际就是玩家在打BOSS卡的现象了。

五、测试总结。
    本测试主要是使用loadrunner来模拟几百个玩家,同时在打BOSS的情况。如果程序得到改善,将可以从这里
测试体现。
    测试过程主要分为录制脚本和运行脚本两部分,如果能够看懂loadrunner的说明文档,懂得基本的录制和运
行操作。
    其实就剩下两个问题:
    1)将测试脚本流程走通,其中可能会遇到打BOSS没有奖励的情况,只按上述文档正确设置应该就没有太大
问题。
    2)修改脚本,将模拟1个玩家操作,修改为N多个玩家操作。

回复

使用道具 举报

  • TA的每日心情

    2019-12-27 13:32
  • 签到天数: 15 天

    连续签到: 1 天

    [LV.4]测试营长

    发表于 2018-5-3 17:09:30 | 显示全部楼层
    我原来做端游就是用loadrunner的,可以仔细讲讲事件这块。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-3-29 18:26 , Processed in 0.064272 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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