游戏服务器自动化测试,服务器自动化测试思路

本文章转载于搜狗测试

最近完成了一个比较大的需求的测试:搜狗浏览器追剧功能。

该需求的主要目的就是分析用户的观影行为(比如访问了哪些视频网址,看了哪些电视剧),进而在特定时间给用户弹泡提醒,方便用户更快的消费视频内容。

本文在此介绍一下服务器端测试的思路。

【需求框架】

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

我们的测试方案主要分三部分:黑盒测试+接口测试+服务器逻辑测试。

接口测试和服务器逻辑测试对应需求框架中的两部分:一、Client-Server信息的收集;二、读取数据库后的运算逻辑;见需求框架中的红色部分。

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

【测试设计思路】

1、接口测试(client_Server)

通过python的http,urlib等库,构造json数据,模拟客户端发送请求到服务器端,检查服务器响应。

请求字段有dralotOff/dralotOn(追剧功能的关闭/开启)等等。

服务器数据格式类似于Json:

涉及两个点:

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

(1)服务器返回(json,状态码)。比如,发送获取用户追剧黑名单的请求后,服务器返回对应用户的NotNoticeVideoList(即哪些网站被用户拉黑,不在进行推送追剧的弹泡)。

(2)写入服务器数据库的正确性(比如用户关闭)。比如,用户关闭了追剧功能,发送该请求后,上图中服务器用户观影数据库中的favorSwitch字段应该置为False。

2、服务器端逻辑测试

通过对服务器数据库写入测试数据,调用服务器计算弹泡的脚本后,检查计算后的弹泡信息是否正确。

服务器数据格式类似于Json:

数据库中字段有hid(用户标识符),videoID(观看的是哪一个电视剧),visitTime(观看电视剧的时间),lastVideoNo(最后一次观看的电视剧集数),favorSwitch(追剧功能开关),recentpushlist(最近推送的弹泡信息),modifiedFlag(在弹泡信息生成后,用户是否又观看了新的剧集或有其他变化,比如关闭了追剧功能)。我们会根据每个字段来设计case,具体见下面的示例。

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

涉及几个点:

(1)用户观影信息数据库中测试数据的构造(Json数据)。比如:观看了西游记第三集,那么计算后的弹泡信息里应该是西游记的第四集。

(2)用户配置数据库中测试数据的构造(Json数据)。比如:当用户关闭了追剧功能后,那么计算后不应该有弹泡信息。

(3)线上电视剧数据库信息的构造。比如:即使用户观看了西游记第三集,如果线上数据库没有对应西游记的相关剧集信息,计算后也不应该有弹泡信息。

【自动化case设计】

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

【自动化case编写】

1.    底层库封装,主要涉及几个点

(1)环境准备和环境清理

(2)发送请求,解析请求返回的内容

(3)对服务器数据库的读写、清理

(4)调用服务器计算弹泡函数的脚本函数

(5)预期结果检查的函数

示意图:

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

2.    自动化case用例转为代码,IDE使用eclipse,利用Pyunit框架+Pydev插件

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

3.部分case的细节示意图

对hid字段的验证:

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

对visitTime的验证:

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

4.    举个case的例子

e15b889e4784?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值