《游戏测试》经典BUG解析001--002

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 《游戏测试》经典BUG解析001--002

经典BUG--001,《阴阳师》业原火BUG


BUG描述:

玩家可以不断刷副本来获得业原火副本的奖励(业原火奖励丰厚,但是需要限定门票)。

事故原因:

①对于现在的副本战斗,客户端会发起一个战斗请求,同时服务端记录相应的奖励返回给客户端,然后客户端在本地进行战斗计算;

②在战斗结束后,客户端会发起一个战斗结算请求,其中带有胜利或者失败标记,还有之前请求战斗时返回的奖励 id;

③由于八岐大蛇和业原火共用一个接口,只会在 type 上进行区分,且这两个副本的消耗机制不一样,八岐大蛇消耗体力,业原火消耗门票。由于业原火在失败等异常情况下不扣除门票,所以御魂副本在战斗开始的时候扣除体力,业原火在战斗结束的时候扣除门票;

④在客户端发送结算时候,需要判断是御魂副本还是业原火,根据 type,如果是御魂副本就跳过扣除,因为在战斗开始就已经扣过;如果是业原火就会扣除门票,同时发送奖励;

⑤客户端第一次发送业原火的战斗请求过来,所以服务端这里没有扣除门票,同时记录了相应的奖励发送给客户端,客户端同时快速切换到御魂界面,导致战斗进入到了御魂的战斗。在结算的时候,发送的是御魂的副本类型和业原火的奖励 id,所以服务端把此次战斗当成了御魂副本,所以没有扣除体力,同时发送了奖励;

⑥对于服务端来说,相信了客户端的协议,没有进一步的验证请求的合法性,导致了奖励的发放没有扣除相应的货币。

一句话总结就是:战斗开始时发送业原火的战斗 id 给服务端,服务端说,这个是业原火,等下战斗结束再扣门票;战斗结束时发送御魂的战斗 id 和业原火的奖励 id 给服务端,服务端说,这个是御魂副本,开始已经扣过体力了,不用再扣了,直接发奖励吧

测试总结:

这类问题很难在测试过程中被发现,需要测试人有很深的经验和复杂的操作。但是如果大家从协议测试考虑,就会相对简单很多。这个问题中御魂副本和业原火共用了次协议:dungeon_rune_attack(dungeon_id) ,当dungeon_id=1 时表示御魂 1 层,当 dungeon_id=13 时表示业原火的痴副本。在战斗开始的时候,发送 dungeon_id=13 告诉服务端打的是业原火痴副本;在战斗结束的时候,将其改成 dungeon_id=1 告诉服务端打的是御魂副本,服务端充分信任了客户端发来的协议,没有做二次验证就直接发奖,导致被刷。

经典BUG--002,《重返未来1999》实名认证BUG

BUG描述:

身份证最后一位是x的玩家,没法输入,导致无法实名认证。截至2020年3月,身份证号码最后一位是x的,全国人民总比的9%左右人口。如果是这个比例的用户量的话,这个BUG的影响还是挺严重的。事故原因:

1、漏测,测试的时候只考虑身份证是数字的情况,没有考虑还有字母要输入。当时看评论的时候,我也才发现原来身份证是有字母的情况。

2、手机输入法兼容,测试的时候没有兼容到足够的手机和输入法(这个也是不太可能完全兼容到的),对测试来说,算是一个疑难杂症了,目前市面上的手机品牌+型号最少都有千种了,每次玩家反馈回来一个问题,内部环境又复现不了,就很麻烦。

测试总结:

首先这类功能就是要覆盖足够全,做好用例评审。其次市面上主流机型的兼容一定是要做的,特别是很火,预下载很高的产品。最后也可以通过合理的设计,尽可能减少兼容性的问题。

相关文章
|
16天前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
6天前
|
搜索推荐 测试技术 API
探秘电商API:从测试到应用的深度解析与实战指南
电商API是电子商务背后的隐形引擎,支撑着从商品搜索、购物车更新到支付处理等各个环节的顺畅运行。它通过定义良好的接口,实现不同系统间的数据交互与功能集成,确保订单、库存和物流等信息的实时同步。RESTful、GraphQL和WebSocket等类型的API各自适用于不同的应用场景,满足多样化的需求。在测试方面,使用Postman、SoapUI和jMeter等工具进行全面的功能、性能和安全测试,确保API的稳定性和可靠性。未来,随着人工智能、大数据和物联网技术的发展,电商API将进一步智能化和标准化,为用户提供更个性化的购物体验,并推动电商行业的持续创新与进步。
20 4
|
8天前
|
小程序 前端开发 关系型数据库
uniapp跨平台框架,陪玩系统并发性能测试,小程序源码搭建开发解析
多功能一体游戏陪练、语音陪玩系统的开发涉及前期准备、技术选型、系统设计与开发及测试优化。首先,通过目标用户分析和竞品分析明确功能需求,如注册登录、预约匹配、实时语音等。技术选型上,前端采用Uni-app支持多端开发,后端选用PHP框架确保稳定性能,数据库使用MySQL保证数据一致性。系统设计阶段注重UI/UX设计和前后端开发,集成WebSocket实现语音聊天。最后,通过功能、性能和用户体验测试,确保系统的稳定性和用户满意度。
|
2月前
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
3月前
|
域名解析 网络协议 测试技术
IP、掩码、网关、DNS1、DNS2到底是什么东西,ping telnet测试
理解IP地址、子网掩码、默认网关和DNS服务器的概念是有效管理和配置网络的基础。通过使用ping和telnet命令,可以测试网络连通性和服务状态,快速诊断和解决网络问题。这些工具和概念是网络管理员和IT专业人员日常工作中不可或缺的部分。希望本文提供的详细解释和示例能够帮助您更好地理解和应用这些网络配置和测试工具。
296 2
|
2月前
|
监控 搜索推荐 测试技术
电商API的测试与用途:深度解析与实践
在电子商务蓬勃发展的今天,电商API成为连接电商平台、商家、消费者和第三方开发者的重要桥梁。本文深入探讨了电商API的核心功能,包括订单管理、商品管理、用户管理、支付管理和物流管理,并介绍了有效的测试技巧,如理解API文档、设计测试用例、搭建测试环境、自动化测试、压力测试、安全性测试等。文章还详细阐述了电商API的多样化用途,如商品信息获取、订单管理自动化、用户数据管理、库存同步、物流跟踪、支付处理、促销活动管理、评价管理、数据报告和分析、扩展平台功能及跨境电商等,旨在为开发者和电商平台提供有益的参考。
77 0
|
4月前
|
测试技术 API 开发者
精通.NET单元测试:MSTest、xUnit、NUnit全面解析
【10月更文挑战第15天】本文介绍了.NET生态系统中最流行的三种单元测试框架:MSTest、xUnit和NUnit。通过示例代码展示了每种框架的基本用法和特点,帮助开发者根据项目需求和个人偏好选择合适的测试工具。
90 3
|
4月前
|
Web App开发 IDE 测试技术
自动化测试的利器:Selenium 框架深度解析
【10月更文挑战第2天】在软件开发的海洋中,自动化测试犹如一艘救生艇,让质量保证的过程更加高效与精准。本文将深入探索Selenium这一强大的自动化测试框架,从其架构到实际应用,带领读者领略自动化测试的魅力和力量。通过直观的示例和清晰的步骤,我们将一起学习如何利用Selenium来提升软件测试的效率和覆盖率。
|
4月前
|
Web App开发 安全 测试技术
软件测试的艺术:从代码审查到用户验收的全方位解析
【10月更文挑战第1天】本文旨在深入探讨软件测试的精髓,通过分析不同类型的测试方法—单元测试、集成测试、系统测试、性能测试和用户接受度测试,揭示其在软件开发生命周期中的重要性。我们将通过具体案例,展示如何运用这些测试技术来发现并修复关键缺陷,提高产品质量。同时,文章还将提供一系列最佳实践,帮助读者建立有效的测试策略,确保软件项目的成功交付。通过阅读本文,您将获得一套全面的软件测试知识体系,以及如何在实际应用中灵活运用这些知识,以提升软件开发的整体质量和效率。
72 2
ly~
|
4月前
|
域名解析 网络协议 Linux
如何测试 DNS 记录中的反向代理服务器是否生效?
本文介绍了三种测试反向代理服务器配置的方法。首先,通过命令行工具如 `ping`、`nslookup` 和 `dig` 检查域名解析是否指向正确的 IP 地址。其次,利用 Web 浏览器访问域名,验证页面加载正常且请求头信息无误。最后,借助网络抓包工具如 `Wireshark` 和 `tcpdump` 分析数据包,确保请求正确转发并返回预期响应。
ly~
291 2

推荐镜像

更多