Oneshot Gems
立即玩

游戏开发者指南

使持久行为有意且可测试

存档状态测试首先要明确产品规则:哪些值在重新加载后应保留,哪些值应在新一局开始时重置?最高分可以保留,临时强化效果则可以不保留。没有明确规则,测试人员就无法判断记住的值是功能设计还是陈旧数据。先写下一份简短的存档约定,再在接近真实玩家使用的条件下测试保留、重置和恢复。

本页内容

记录哪些值会跨越各个边界

为重新开始一局、重新加载页面和开启新的浏览器会话制作一张小表。例如:重新开始时重置当前分数;个人最高分在重新加载后仍保留;新会话开始时当前关卡回到第一关。明确记录每个值以及它需要跨越的边界。这样就能发现意外保留(例如重新开始后仍显示上一局的计时器)或意外丢失(例如重新加载后最高分消失)。

探针缺失、格式错误和旧值

如果能控制测试环境,依次测试没有存储键的首次访问、有效的已保存分数,以及空值或格式错误的值。健壮的游戏应采用明确设定的默认处理,而不是显示 NaN、锁住菜单或在开始游戏前崩溃。如果分数有上限或必须是数字,就在读取数据的边界测试负数、异常大的数值和非数字输入。这些是韧性检查,并不意味着玩家能通过产品界面编辑存储数据。

关于⁨测试游戏保存状态⁩的常见问题

游戏在会话之间应该保存什么?

这取决于预期的体验。明确说明设置、最佳分数、进度和正在进行的运行是否持续存在,然后在重新加载和新会话边界时测试每个设置。

localStorage是否保证可用?

任何存储选择均不应被视为无条件保证。妥善处理丢失或无法使用的数据,并验证游戏在支持的环境中的后备行为。

延伸阅读

发现信息过时了? 报告需要更正的内容

继续玩下去。

免费浏览器游戏,随时等你开玩。发现喜欢的游戏,让它成为你的下一个最爱。

跟随好奇心探索