A Lightweight Approach of Human-Like Playtest for Android Apps

A Lightweight Approach of Human-Like Playtest for Android Apps
复制标题

DOI:
10.1109/saner53432.2022.00047
复制
发表时间:
2022-03
期刊:
2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)
影响因子:
--
通讯作者:
Yan Zhao;Enyi Tang;Haipeng Cai;Xi Guo;Xiaoyin Wang;Na Meng
Yan Zhao;Enyi Tang;Haipeng Cai;Xi Guo;Xiaoyin Wang;Na Meng
中科院分区:
其他
文献类型:
--
作者:
Yan Zhao;Enyi Tang;Haipeng Cai;Xi Guo;Xiaoyin Wang;Na Meng

文献摘要

相似文献

播放测试是测试人员玩视频游戏以进行软件质量保证的过程。手动测试是昂贵且耗时的,尤其是当需要测试许多手机游戏并且每个游戏版本都需要大量测试时。当前的测试框架(例如,Android Monkey)受到限制,因为它们没有采用领域知识来玩游戏。基于学习的工具(例如Wuji)需要巨大的手动努力和开发人员的ML专业知识。本文提出了轻巧的方法,可以通过手动测试概括测试策略,并采用自动测试的策略。 LIT有两个阶段:战术概括和战术具体化。在第一阶段,当人类测试人员在一段时间内(例如八分钟)玩Android游戏$ G $时,请记录测试人员的输入和相关场景。基于收集的数据,点燃了一组上下文感知的抽象游戏测试策略,这些测试策略描述了在什么情况下,可以采取什么行动。在第二阶段,基于广义策略的Littest $ G $。也就是说,鉴于随机生成的游戏场景,暂时将该场景与任何推论策略的抽象上下文相匹配;如果比赛成功,LIT会自定义策略,以生成Playtest的动作。我们对九场游戏的评估显示,通过涵盖更多代码并触发更多错误,可以胜过两个最先进的工具和一个基于增强的工具(RL)的工具。 LIT补充了现有工具,并帮助开发人员测试各种休闲游戏(例如Match3,射击和拼图)。
A play test is the process in which testers play video games for software quality assurance. Manual testing is expensive and time-consuming, especially when there are many mobile games to test and every game version requires extensive testing. Current testing frameworks (e.g., Android Monkey) are limited as they adopt no domain knowledge to play games. Learning-based tools (e.g., Wuji) require tremendous manual effort and ML expertise of developers. This paper presents LIT-a lightweight approach to generalize play test tactics from manual testing, and to adopt the tactics for automatic testing. Lit has two phases: tactic generalization and tactic concretization. In Phase I, when a human tester plays an Android game $G$ for a while (e.g., eight minutes), Lit records the tester's inputs and related scenes. Based on the collected data, Lit infers a set of context-aware, abstract play test tactics that describe under what circumstances, what actions can be taken. In Phase II, LIttests $G$ based on the generalized tactics. Namely, given a randomly generated game scene, Lit tentatively matches that scene with the abstract context of any inferred tactic; if the match succeeds, Lit customizes the tactic to generate an action for playtest. Our evaluation with nine games shows Lit to outperform two state-of-the-art tools and a reinforcement learning (RL)-based tool, by covering more code and triggering more errors. Lit complements existing tools and helps developers test various casual games (e.g., match3, shooting, and puzzles).