Virtual Reality (VR) technologies offer immersive user experiences across various domains, but present unique testing challenges compared to traditional software. Existing VR testing approaches enable scene navigation and interaction activation, but lack the ability to automatically synthesise realistic 3D user inputs (e.g, grab and trigger actions via hand-held controllers). Automated testing that generates and executes such input remains an unresolved challenge. Furthermore, existing metrics fail to robustly capture diverse interaction coverage. This paper addresses these gaps through four key contributions. First, we empirically identify four prevalent interaction types in nine open-source VR projects: fire, manipulate, socket, and custom. Second, we introduce the Interaction Flow Graph, a novel abstraction that systematically models 3D user interactions by identifying targets, actions, and conditions. Third, we construct XRBench3D, a benchmark comprising ten VR scenes that encompass 456 distinct user interactions for evaluating VR interaction testing. Finally, we present XRintTest, an automated testing approach that leverages this graph for dynamic scene exploration and interaction execution. Evaluation on XRBench3D shows that XRintTest achieves great effectiveness, reaching 93% coverage of fire, manipulate and socket interactions across all scenes, and performing 12x more effectively and 6x more efficiently than random exploration. Moreover, XRintTest can detect runtime exceptions and non-exception interaction issues, including subtle configuration defects. In addition, the Interaction Flow Graph can reveal potential interaction design smells that may compromise intended functionality and hinder testing performance for VR applications.
翻译:虚拟现实(VR)技术在各领域提供了沉浸式用户体验,但相较于传统软件呈现出独特的测试挑战。现有VR测试方法虽能实现场景导航与交互激活,却无法自动合成真实的三维用户输入(例如通过手持控制器执行抓取与触发操作)。能够生成并执行此类输入的自动化测试仍是未解决的难题。此外,现有度量指标难以稳健捕捉多样化的交互覆盖度。本文通过四项关键贡献填补这些空白:首先,我们通过实证研究在九个开源VR项目中识别出四种主流交互类型——激发、操控、插接与自定义;其次,我们提出交互流图这一新型抽象模型,通过识别目标、动作与条件来系统化建模三维用户交互;第三,我们构建了XRBench3D基准测试集,包含十个VR场景共计456个独立用户交互,用于评估VR交互测试;最后,我们提出XRintTest自动化测试方法,利用该图实现动态场景探索与交互执行。在XRBench3D上的评估表明,XRintTest实现了卓越效能,在所有场景中对激发、操控与插接交互的覆盖率达到93%,其效能较随机探索提升12倍,效率提升6倍。此外,XRintTest能够检测运行时异常及非异常交互问题,包括细微的配置缺陷。交互流图还能揭示可能损害预期功能并阻碍VR应用测试性能的潜在交互设计异味。