通用测试点

除了独立完整的功能模块,游戏开发中还会有许多零零散散的功能点,如果出现问题,会造成较大范围的影响。同时这些基础的功能点可能在不同条件下使用方式也会有所不同,产生的问题也各异。这里尽可能地列出一些常见的通用功能的测试点。


测试用例

下载地址及位置:功能测试用例库


文本输入框

  1. 输入中文、英文、数字、特殊字符(@#¥%空格NULL等)、表情、SQL语句、http链接等,查看发送和显示是否正常。
  2. 涉及到数值部分的,一定要试下正数、负数,最大值和最小值(一般是0)。

时间

  1. 前后端时间不一致时,功能的时间计算和显示时长还应该是以后端时间为准。
  2. 客户端服务端之间要做时间戳验证,不然客户端用了一些加速软件,加快客户端的协议发送,会破坏游戏的公平性。
  3. 跨时间点刷新的时候,要试下角色在线和离线两种情况。
  4. 到刷新时间点时,角色刚好下线,有可能错过了在线刷新,然后重新登录后认为其是在刷新时间点后下线的,也不执行离线刷新。
  5. 注意海外版本服务器的时区问题。

异步交互

异步交互指的是那种需要对方做出应答选择,非即时响应的交互方式,例如邀请组队,加入帮会等,需要对方同意。但凡有这样的异步交互,都要考虑交互过程中双方可能发生的状态变化。例如:

  1. 角色下线。
  2. 角色在与他人进行交互。
  3. 角色从满足条件变成不满足条件。
  4. 是否有默认的超时处理。
  5. 1对多,多对1,多对多的交互。

界面UI

  1. 界面层级之间的跳转,跳转太多次可能会引发客户端闪退。
  2. 最好所有的错误都有明确的提示。
  3. 字体版权问题需要留意,有些字库可能不全,部分汉字无法正常显示。

奖励

  1. 奖励最好都设有一个每日获得的上限,贵重的奖励最好设置为绑定不可交易。
  2. 获得任何道具奖励时,都要尝试下背包满的情况。
  3. 任何判断条件再给奖励的逻辑,最好都是先判断条件满足并执行成功再给予奖励。例如上交物品,确认物品扣除后再给奖励,如果先给了奖励,物品扣除失败,就有可能刷奖励。
  4. 数值取整。一般分为向上取整和向下取整两种方式。举例,1.2向上取整就是2,向下取整就是1。一般计算出来的数值太小,会向上取整;例如交易行在交易成功时,要抽取2%的税率,但如果交易的金额就是1,2%的税率也就是0.02也要向上取整成为1之后,玩家最终实际可以获得的金钱就是0了。而计算出来的数值较大时,可以向下取整。

概率

  1. 一般先将各个概率改为100%,其他改为0,确认都可以正常触发到;然后再两两一组,改为50%,确认随机到的概率基本均等,最后再用正常概率试几次。
  2. 确认所有概率总和相加为100%,如果使用的是权值,最好规范一个权值总和(例如10万),根据总和计算合理的权值分段。

技能效果buff

  1. 注意持续时间,显示的效果名称,图标。
  2. 相同效果是叠加还是重置。
  3. 不同效果之间是否会互斥覆盖。
  4. 上下线效果是否保存。
  5. 跨地图场景是否保留,能否带出副本,影响游戏玩法。

二次判断

  1. 一般游戏里的操作响应会有两次判断,第一次是客户端进行的判断,第二次是服务端进行的判断。客户端判断是为了加快响应,而服务端判断是为了确保逻辑的正确。很多时候服务端都是忘记判断的,客户端发来什么请求就直接响应执行了,导致外挂或者特殊操作刷奖励。
  2. 服务端对客户端发来的协议要有验证规则,以防外挂模拟客户端直接发送封装好的协议来刷奖励。
  3. 进行一些重要操作的时候也需要客户端二次确认,比如摧毁一个重要物品,兑换重要奖励,花费大额金钱等,这些都是为了防止玩家误操作。

断线重连

  1. 断线时反复进行操作,重连后是否会重复发送请求,例如领奖,例如购买商店物品;
  2. 断线重连后数据刷新是否正确,例如有些客户端副本,每次断线重连后都会将角色血量补满,因为血量临时存放在客户端,没有同步给服务端,每次重连服务端血量重新同步给客户端;
  3. 断网情况下打死boss完成副本,重连后能否正常结算获得奖励;
  4. loading场景的过程中断网,弹出的断网提示框有可能被loading界面遮挡或界面卡死;
  5. 顶号登录,一般与普通的登录流程处理不同。
  6. 切换角色,切换后的数据刷新是否正确,做几个任务,打几个副本看看;
  7. 直接关闭客户端,角色能否正确托管,然后限时内连上去可以继续正常进行游戏;
  8. 将客户端至于后台或锁屏一段时间后再重新置回前台;

进度条

  1. 进度条一定要注意能否打断,打断后不再继续执行后续逻辑。一般进度条是在服务端要做延时回调的,不做在客户端的原因是防止客户端被修改,直接跳过了读条。《月影传说网络版》的生活技能采集曾今就做过只在客户端读条,结束了再向服务端发送即时请求,结果操作够快的话,可以在采集读条完成的一瞬间再次进行采集,或者可以多个人同时采集同一个物品,这就等同在刷奖励了。
  2. 开始读条的瞬间打断,同时再次触发读条。这样反复操作几次,有可能会导致服务端的进度条状态同步异常。例如《月影传说网络版》的帝王楼副本就出现过反复开启和打断机关,最终导致机关不能开启。
  3. 同时触发多个不同的读条。《卧虎藏龙2》的金戈沙场出现过,玩家读条采集旗子的同时读条上马,而上马和拿旗的状态是互斥的,角色上马后,旗子的读条没有做失败处理,而是标记上了被人拿起的状态,结果就成了,角色没有获得旗子,而旗子也不能再被其他采集,提示旗子正在被人采集。

提示信息

  1. 提示信息不明确,尤其是某些操作失败的时候没有明确提示失败的原因。

results matching ""

    No results matching ""