如果您的应用程序有2100万始终在线的活跃用户,则需要应对无数质量挑战。为避免出现大问题,我们将共同商讨,如何让经验保障工作先行一步。《精灵宝可梦:Go》终于上线了。这款手机游戏有多受欢迎?很简单,它已经成为美国有史以来最受欢迎的手机游戏,拥有2100万活跃用户。但是兴奋的玩家在玩游戏的时候发现了很多问题。我个人发现自己无法使用我的Google凭据登录,因为它“无法访问该服务器”。后来虽然登录完成了,但是由于“失去GPS连接”,我没能抓到身边的青蛙种子。在线报告游戏问题以及一些可能的解决方案的帖子层出不穷。GooglePlay和iTunes推出了大量旨在“修复”游戏并让玩家流畅玩游戏的应用程序。我们不禁要问:为什么会有这么多的失败?难道是游戏开发者没有为涌动的玩家做好充分的准备?或者,他们没有测试所有可能的用例——地理定位、设备、操作系统、硬件等?上线第一周,几乎每天都有《精灵宝可梦:Go》服务器崩溃,影响用户体验的报道。值得庆幸的是,这一切都没有影响这款游戏的受欢迎程度。目前,其开发者Niantic已经掌握并修复了多种问题。不过,随着游戏在更多国家上线,恐怕他们将面临更大、更夸张的冲击。带着对游戏的热爱,让我们来看看我们应该吸取的四堂软件质量保证课:第一课:你的实际水平是由你的短板决定的——测试和监控API《精灵宝可梦:Go》的核心在于API。无论是登录应用程序、识别位置、查看增强现实效果、收集神奇宝贝、战斗还是驾驶游戏街,都依赖于API来实现数据和请求传输。这些API有些是Niantic独立开发的,有些是流行的公共API——比如GoogleGeoAPI。然而,许多玩家发现游戏无法检测到GPS位置,或者有时会给出错误的位置。相关问题包括:?API端点可用性?对请求的特定响应速度?有效负载的功能正确性由于整个游戏都是根据地理定位的正确性和严谨性构建的,即使是很小的不准确也会影响用户体验。游戏厂商不仅需要在部署前测试不同的API功能,还要根据不同的场景监控API功能的正确性——包括地理位置、设备、操作系统和服务提供商对效果的影响。第2课:验证用户生成的数据事实上,《精灵宝可梦:Go》并不是Niantic的第一款增强现实游戏。早在2011年,他们就发布了Ingress的测试版,允许用户在世界各地的标志性建筑和历史地点收集“门户位置”。正是有了这部分数据,公司才得以在《精灵宝可梦:Go》建立竞技场和宠物店数据库。虽然人群提供的数据非常庞大,但还是有可能带来虚假的结果。此外,它指向的一些偏远地点甚至可能对玩家造成人身安全风险。谁应该控制这个?当然是游戏制作人!第三课:测试和监控前端在《精灵宝可梦:Go》游戏中,API和GUI需要配合完成信息采集,这也意味着对两者进行测试非常重要。前端图形用户界面(简称GUI)不仅需要API响应,还需要配合设备硬件/传感器数据。例如,玩家的位置由基于位置的传感器GPS提供,这反过来会影响游戏GUI的性能。这意味着测试人员需要使用集成的GUI和API测试工具来进行问题分析。同时,要建立大规模、扎实的自动化测试策略,还需要关注GUI和API层的行为优化。我们在此基础上构建了更多的单元测试,然后是API测试,最后完成了进一步减少的UI测试。由于游戏厂商在全球推广的野心很大,为了在不同地区提供一致的用户体验,前端错误或易用性问题必须引起高度重视。第4课:为所有潜在用户场景做好准备与任何应用程序一样,《精灵宝可梦:Go》有各种各样的用户。他们来自不同的国家,位于不同的地点,使用不同的设备访问应用程序,但期望获得相同的性能。事实上,根据我的个人经验,这款游戏在Android设备上非常耗电,我什至不得不在尝试几天后选择删除它。我认为游戏开发者在增强现实游戏领域才刚刚起步。这类应用可以带来新的发展方向和潜在的可能性,但同时也面临着各种前所未有的挑战。第一次尝试做这个已经够惊艳了,希望他们以后能继续积累经验,真正在软件质量上带来让大家满意的成果。【翻译稿件,合作网站转载请注明原译者和出处.com】原标题:PokemonGo狂野第一周的4堂软件质量课原文链接:https://dzone.com/articles/4-software-quality-lessons-from-pokemon-gos-wild-f核子可乐翻译
