测试基础(四)自动化测试
在建设CI体系的质量防护体系中,一个关键是测试自动化,这里再谈谈测试自动化的相关背景。按照自动化测试的相关特性,我们可以将到目前为止的自动化测试分为三代:
第一代自动化测试,使用的是工具一体化的自动化测试系统,也就是自动化测试与测试工具、测试对象等相关的测试环境完全绑定,测试用例主要依靠捕捉回放的方式,用例投入大而灵活性很差,主要用于系统回归;
第二代自动化测试,为了解决测试用例与测试环境绑定的问题,引入了各种自动化控制语言,比如TCL、PYTHON、JAVASCRIPT等,通过这些语言灵活控制测试环境的变化,实现了测试用例的独立性,测试用例对于测试过程的描述可以持续继承使用并逐步形成完备的测试集;
第三代自动化测试,自动化测试中投入最大的就是自动化用例集的构建,为了提升自动化用例编写效率,对自动化用例体系进行了进一步的分层,实现了分层的自动化用例体系,将驱动部分、执行部分等单独抽象出来,上层的自动化用例通过调用底层的相关“API”来实现相关的测试用例功能,这样通过测试用例体系构建的分工实现用例构建的专业化和职业化,进而提升自动化用例开发效率。
当前,随着软件技术的进步,虚拟化的引进对于测试效率的提升,测试作为一种软件开发的质量保证服务理念也越来越成为自动化测试新的趋势和发展方向。