摘要:随着软件迭代模式的不断发展,测试环节的自动化程度也得到了有效的、持续的提升,智能化测试是结合AI算法和测试数据对测试多个环节进行针对性的优化。
本文分享自华为云社区《【智能化测试专题】智能化测试技术探索》,作者: DevAI。
1. 发展阶段
测试是评估和验证输入是否能得到符合预期输出的过程。测试包含了软件测试和硬件测试。测试的早期萌芽是在20世纪50年代,主要是以调试为主,验证程序是否符合预期。1957年Charles Baker在《软件测试发展》中将测试和调试区分开来,提出了测试的概念,指出测试的目的不仅仅是验证还需要确认软件是否满足要求。1983年IEEE首次召开了软件测试的技术会议,并给出了软件测试的定义。IEEE定义的软件测试明确指出测试的目的是为了检验软件是否满足需求,它是一门需要经过设计、开发和维护等完整阶段的过程。随着软件研发模式从瀑布模式到敏捷模式再到DevOps(其各环节流程如图1所示),DevOps注重Dev、Ops和QA(Tester)之间的协同合作,因此为了达到产品质量的持续改进,对测试环节流程自动化与持续进行都提出了更高的要求。