软件测试是对项目研发过程的产物(文档、代码等)进行审查,保障产品质量的过程。我们可以通过手工测试、自动化测试、工具扫描等方法完成这个任务。
其中,自动化测试是当前重要的一种测试方法,具有响应速度快、稳定性高、人工干预少的特点,很好地契合了高响应、海量数据验证等需求的测试任务。
数据驱动是自动化测试的灵魂,数据驱动的应用程度直接决定了自动化测试的水平和质量。
自动化测试和数据驱动
如果你有100亩麦子需要收割,你会怎么做p>
方法一:拎起镰刀或者雇几个人拎起镰刀割麦子。
方法二:制造或者购买一台收割机,然后开着收割机割麦子。
显然,这两种方法都能完成任务,但是,方法二具有重资产、高效率的特点。
测试就如同割麦子,完成麦子收割是测试任务,手工收割和收割机收割对应手工测试和自动化测试两种方法。
这两种方法各有利弊,手工测试具有上手易(一把镰刀就行),适应性强(不论平地、梯田,还是丘陵都ok)的特点,自动化测试具有效率高(收割速度快)、质量稳定(机器不容易犯错)、不疲劳(机器不用休息)的特点。
对于那种对测试质量要求稳定,测试反馈要求快,需要反复验证和海量数据验证的测试任务,自动化测试技术可以很好满足这类测试任务的要求。
测试数据如同机油,是收割机运行的燃料。数据驱动是自动化测试的核心,如同机器的发动机,是机器运行的动力源。没有测试数据这个燃料和数据驱动这个动力源,收割机就是一台没有灵魂的废铁无法运转,自动化测试也就无从谈起。
测试数据
测试数据作为测试的输入,测试数据准备的质量直接决定到测试范围是否全面,测试程度是否充分,最终影响测试过程的质量。
源自存量数据
源自存量数据是指利用原有系统运行积累的生产数据,经过脱敏、加工后生成的测试数据。这个原有系统可以是系统自身(升级优化前的系统、重构前的系统、手工记录的业务数据等),也可以是业务关联系统(业务上游系统、交互系统等)。
这类测试数据的特点是数据已经存在,可以直接使用,缺点是这类数据是通过正常的业务逻辑积累产生的,通常是还是高频交易产生的数据。这类数据天然具有局限性,无法覆盖系统的所有业务场景,如:异常操作、低频交易等。
源自新增数据
源自新增数据是指根据业务需求、系统设计,创造出来的符合业务需求的数据。
该类数据是测试人员通过分析业务需求、系统设计,针对项目业务需求(含高频交易和低频交易)、异常处理、边界值检验等人为创造的数据。
这类测试数据的特点是测试数据经过系统性分析,覆盖面较广,代表性较强。不足之处在于数据都需要人工创造,当系统较为复杂或者规模较大时需要的测试数量较多,人工制造成本较大。
数据驱动测试
数据驱动测试是自动化测试的灵魂,在数据驱动测试的思想中,自动化案例就是流水线,测试数据像水一样通过流水线,触发系统做出响应。
然后,通过配置在流水线上的断言、检查点,比对系统响应是否符合预期响应。
符合,则表示该功能场景正常
不符合,则预示该功能处理存在异常
显而易见,测试数据是至关重要的。那么自动化测试中的测试数据都从哪里获取呢p>
大体上自动化测试数据可以归为四大类、、八小类,详见下表。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!