一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就来谈谈关于软件测试中的“自动化测试的基本概念”。
随着软件测试在国内的发展,人们发现手动测试在回归测试方面的表现效率太低,并且很难保证测试的全面性,手工测试受到很大的挑战,这促进了自动化测试的发展。现在越来越多的企业开始研究自动化测试,而自动化测试作为黑盒测试的一个分支,未来发展前景一片光明。而自动化测试则是通往高端测试人才的另一个选择方面,可以成为职业规划的一部分。
本章主要包括以下内容:
自动化测试的概念
自动化测试优点
自动化测试缺点
自动化测试普遍存在的问题
主流自动化测试工具
自动化测试框架
自动化测试过程
自动化测试实例
一、自动化测试的概念
自动化测试是通过人工操作使用软件来实现测试过程,通过软件来控制测试执行过程。但实际上仅仅使用软件来模拟手工测试的过程是不够的。一个完整的自动化,还需要能自动判断测试结果,即比较实际结果和预期结果是否一致,设置测试的前置条件和其他测试控制条件,并输出测试报告。
通常,自动化测试需要在适当的时间将已经形式化的手工测试过程自动化。
自动化测试目的和范围
从自动化测试小组的角度来讲,自动化测试的目的是开发一套能够支持自动化测试的工具。自动化测试小组负责设计并实现数据驱动自动化测试框架,不仅如此,还需要设计和构建用于回归测试的自动化测试套件。从企业的角度来讲,自动化测试的目的是提高测试效率,减少手工测试的工作量,进而达到节约测试成本的目的。
在自动化测试过程中,为了支持自动化测试脚本的开发和与测试有关的维护活动,必须对自动化测试框架进行专门的部署。自动化测试框架必须支持单元测试、集成测试、系统测试以及回归测试。自动化工作重心应放在某个特定领域的部署上。
所选择的部署方法应该能够覆盖自动化测试的所有工作。手工测试活动可以作为自动化测试的先导,其目的是使用手工测试的方法测试应用程序的所有特征。同时,在测试过程中需要开发一些测试条件和测试数据,这些测试条件和测试数据可以通过回归测试的自动化测试框架来实现。
二、自动化测试需要达到的程度
自动化测试需要达到什么程度?这个问题在自动化测试工具发展的最初阶段就有人提出过。
首先,必须了解自动化测试工具的测试过程和被测试系统的测试过程(指手工测试时的测试过程)。测试工具与测试过程是不同的,工具是用于促进测试过程的,能被用于实现一个过程并执行测试过程的各种规范。在很多情况下,工具自带的内建程序可以被理解为过程,然而它们往往是不完整的,不能正确反映过程,最好的自动化测试工具是能够将工具与测试需求达成一致,并且提供高度可自定义的工作流程和跟踪报告能力。
其次,必须了解测试过程中涉及到的几个环节:测试计划、测试设计、测试构建、测试执行、测试结果的捕获和分析、测试结果验证和测试报告。在整个测试过程中这些活动都是密不可分的,只有将这些测试环节与自动化测试过程结合起来,才能更好地确定自动化测试需要达到的程度。
最后,所有领域的自动化测试都应该保证时间和成本在一定的控制范围内。实现的自动化程度越高,测试过程就越好、越有效,但所需的时间和成本就越高,项目的进度与成本影响自动化测试程度的高低。
自动化测试成本包括两部分:固定成本和可变成本。
固定成本通常包括以下几个方面:
硬件;
自动化测试工具;
自动化测试培训;
自动化测试环境设计和搭建;
自动化测试环境维护。
可变成本通常包括以下几个方面
自动化测试计划;
自动化测试用例设计;
自动化测试脚本开发;
自动化测试脚本维护;
自动化测试脚本运行;
自动化测试结果分析;
缺陷报告;
自动化测试执行数据保存。
今天关于“自动化测试的基本概念”就学习到这里了,每个工作日小编都会更新一个小知识,希望大家多多关注我们,一起来学习喔!