论文部分内容阅读
随着移动智能设备普及,移动应用已广泛应用于各个行业和领域。同时,移动应用市场竞争也日益激烈,用户对其质量要求也更为严格,迫切需要先进的移动应用测试理论与方法。移动应用具有设备种类多、运行环境复杂、操作模式多样、具有移动性等特点,使得传统软件测试方法已难以完全满足和适应移动应用测试需求。兼容性和易用性是移动应用的两个重要质量特性,直接影响移动应用的使用与推广,而位置服务则是移动应用的一种重要的特色服务。本文在深入分析移动应用兼容性测试、易用性测试和移动位置服务测试等面临的问题与挑战基础上,对测试风险评估、测试环境选择、测试数据生成与优先、自动化测试等关键技术进行了研究探索,以期提高移动应用测试的效率与质量。本文的主要研究工作和贡献如下:(1)移动应用兼容性影响因素多、测试繁琐、成本高。针对上述问题,论文提出了一种基于Apriori算法的兼容性风险评估方法。该方法通过挖掘云测试平台上海量历史兼容性测试数据,识别高风险特征集,提高兼容性测试效率。进一步提出一种面向多目标的兼容性测试环境选择方法。该方法在综合考虑测试覆盖率、市场占有率、兼容性风险、测试成本等基础上,应用多目标遗传算法,为用户推荐一组优化的测试环境集。实验验证表明,与传统随机测试方法相比,在相同数量的测试环境集下,所推荐的测试环境集有助于发现更多的移动应用兼容性故障。(2)移动应用用户数量众多、使用场景多样,易用性测试困难。论文提出了一种基于操作轨迹的移动应用易用性测试方法,支持真实用户场景下的大规模、自动化移动应用易用性测试。该方法采用带有时间标签的有限状态机建模用户操作轨迹,通过分析比较用户操作轨迹模型与专家标准操作轨迹模型之间的差异,评价和测试移动应用的有效性、高效性、记忆性和容错性。实验表明该方法有助于发现特定用户设备和场景下的移动应用易用性问题,是对传统实验室测试方法的有益补充。(3)移动位置服务应用区域广袤,兴趣点众多。本文提出了一种基于兴趣点分布的测试数据随机生成方法,该方法基于蒙特卡洛思想,根据兴趣点和移动用户地理分布,随机生成相近分布概率的测试数据,以实现对兴趣点和移动用户的高测试覆盖。进一步,定义了一组位置相关的测试数据选择指标,用于选择优先测试数据子集。初步实验结果表明,所提出方法有助于选择合适的测试数据子集,提高基于位置的移动信息服务的测试效率。(4)现代移动导航服务日趋智能化,导航算法和移动应用升级频繁。论文首先定义了移动导航服务的基本概念和测试模型,然后提出了基于复杂度和偏离度的两种回归测试方法。基于复杂度的回归测试方法,通过计算移动导航测试数据所在导航区域的复杂度,选择优先回归测试数据。基于偏离度回归测试方法则通过统计计算导航区域中用户路线偏离度,选择优先回归测试数据。实验结果表明,上述两种测试数据优先方法均有助于尽早发现导航服务故障,而基于偏离度的回归测试方法则更为有效。这是因为偏离度直接反映了用户对导航推荐路线的不满意,其所测试的导航区域中存在故障的概率更高。