QECon上海站|蚂蚁测试用例智能生成技术架构与实践
智能测试用例生成技术在当今的测试领域引起了广泛关注,特别是在DevOps产品中,测试用例自动生成成为了一项关键技术。本文将深入探讨这一领域的背景、相关研究方向、挑战以及蚂蚁公司如何应用这项技术。
测试用例自动生成的背景在于,随着业务复杂系统的不断增加,对系统测试和维护的投入成本也随之上升。开发和测试工作量的不平衡,使得在功能迭代中,编写测试用例所需的时间可能与开发业务代码的时间相当。因此,通过智能化手段提高测试效率,特别是单测的效率,成为了解决这一问题的关键。
单测因其快速、稳定、问题诊断快速的特点,在DevOps流水线中作为持续回归的基础,发挥着重要作用。在测试金字塔中,单测占据80%的比例,其地位可见一斑。然而,在实际研发流程中,单测用例比例往往较低,面临开发成本高、运维难等问题。
测试用例自动生成的研究方向包括模糊测试、符号执行和基于搜索的软件测试等,这些方法旨在通过自动化手段提高测试用例的生成效率。在蚂蚁公司,我们通过SmartUnit这一产品,实现了测试用例的智能生成,解决了用例生成、执行和运维中的挑战。
SmartUnit产品提供了快速提升覆盖率和智能探测异常的核心能力,支持本地命令行、IDEA插件和DevOps组件三种使用方式,适用于Local测试和回归测试阶段。在覆盖、有效性、精简性、生成和执行效率方面,SmartUnit展现出显著的性能优势,覆盖率达到60%以上,有效性超过60%,用例精简性得到保障,用例生成效率高,执行效率快。
在实践应用中,SmartUnit已经在蚂蚁多个BU中得到广泛应用,覆盖系统数据1000+,实现了用例覆盖率和有效性的显著提升,支持了内部编程活动,发现大量问题,包括BUG和健壮性问题。面对未来发展,SmartUnit将致力于算法优化、产品形态丰富、开源共建和SaaS服务方向,以进一步提升测试用例自动生成的效能。
智能测试用例生成技术为提高测试效率、优化资源分配和提升产品质量提供了有力支持。通过持续的技术创新和实践应用,这一领域将不断进步,为软件开发和测试领域带来更高效、更智能的解决方案。
多重随机标签