软件自动化测试方法及其应用研究

时间:2021-09-11 21:09:57 浏览量:

王静 杨晓峰 钱斐斐

【摘要】    在当前信息化时代,软件成为了一项非常重要的载体,在很多方面都有运用,是实现相关应用功能的核心部分。在软件设计的过程中,完成设计之后,还需要对软件进行测试,验证软件是否可以满足设计功能,验证软件运行过程是否顺畅,软件本身是否存在漏洞。可以说,软件测试,是软件实际应用前的一道质量把关工作。随着软件自动化测试的发展,需要对软件自动化测试的方法形成认识,并且把握到软件自动化测试的具体应用。本文就立足于此展开分析,针对软件自动化测试展开论述,探讨一些实现软件自动化测试的方法,并提出一些应用,希望能够给有关人士带来启发参考。

【关键词】    软件测试    自动化    方法    应用

引言:

计算机技术的快速发展,催生了越来越多的软件,为了确保软件自身性能达到理想水平,就需要在软件投入使用前展开相应的测试工作。随着软件量越来越多,软件自身的程序代码更加复杂,这就需要实现软件测试的自动化,确保能够自动对软件展开测试,这样才能让软件测试达到理想效果。

一、软件自动化测试

自动化测试,是软件测试的一个组成部分,在软件工程规模逐渐扩大的背景下,软件产品的功能更加丰富,性能要求更高,更新换代速度更快,使得软件开发的周期缩短,这就可能导致软件中会存在一些漏洞或是问题。传统的测试模式,已经逐渐难以适应软件测试的根本需求,这就需要实现软件的自动化测试,让软件测试的技术水平和测试效果更高。在开展测试的过程中,需要有效分析软件测试过程,明确自动化测试是否适用,有以下几点条件需要满足:

一是需求变动不频繁。自动化测试,能够对软件的基本功能进行测试,但是往往并不会在一些其他条件下进行测试。因此,如果软件功能经常性变动,那么就会导致软件测试不具备突出意义。因此,就需要确保软件本身的结构和功能不会频繁变动,这才会让自动化测试具有意义。

二是项目周期足够长。自动化测试涉及到一系列过程,比如测试需求确定、测试脚本编写等等,这些都需要一定的时间来完成。所以,自动化测试,需要有足够的时间。如果时间紧迫,那么就不太适合自动化测试。

三是脚本可重复使用。使用自动化测试,还需要关注到测试脚本的重复使用,只有多次使用这个测试脚本,那么才能使其展现出价值。如果仅仅只是使用一两次,那么就显得成本较高,并不划算。

而根据自动化测试的实际运用,其表现出来了多方面的显著优点。

第一,能够更加方便地对软件程序实现回归测试。在软件自动化测试中,这可能是最重要的任务,尤其是在出现较为频繁的程序修改时,能够体现出显著的效果,可以让回归测试花费更少的时间,测试效率得到提升。

第二,测试任务可以频繁多次执行。自动化测试虽然需要一定时间来设计测试程序,但是在设计好测试程序之后,就可以对同类软件展开频繁测试,这对于批量化的软件测试而言,能够起到显著的作用。

第三,能够解决一些较难的测试问题。在软件测试中,传统的手工测试,会面临一些比较难以解决的问题,而基于自动化测试,通过对测试程序的设计,就能够对一些比较难的问题予以有效解决。

二、软件自动化测试的一些常见方法

软件自动化测试,已经有了一定的发展,出现了一些不同的测试方法。在软件测试的工作实践中,需要对这些测试方法形成有效的认识。

2.1关键字驱动

在众多软件测试方法中,关键字驱动,是一种比较常见的测试方法,其通过数据和关键字的结合,对数据执行测试予以描述,实现测试的数据驱动。在实际测试中,基于相同的框架,完成各环节的测试工作,该框架能够适用匹配不同的接口库,让测试功能得到拓展。

2.2数据驱动

在软件自动化测试当中,还可以使用数据驱动的方法,来执行软件测试的工作。数据驱动,在测试过程中,适合脚本分开的,建立模块化的测试库,依靠驱动脚本,来对一些相似的功能实现测试,如此有利于形成新的测试机制。不仅如此,维护工作,也可以分离,测试库程序由程序员负责完成编写,而数据维护由测试人员负责。

2.3独立脚本测试

脚本测试分为线性脚本和结构化脚本。对于线性脚本来说,可以使用不同的编程语言,编写非结构化的脚本进行测试,脚本可以与被测系统实现直接的交互,可以快速上手,实施测试。但是这类脚本容易受软件变化的影响,一旦软件系统改动,脚本也受影响,修改维护成本高。线性脚本不适合运用于大型的自动化测试。而结构化脚本具有各种逻辑结构,比如循环等,也可以使用函數调用功能,所以此类脚本的难度比线性脚本大,需要测试人员具备一定的编程能力。另外,结构化脚本的可维护性比较好。

2.4录制回放

在软件测试中,早先的商业化测试,还会使用到录制回放的测试方式,这种方式不需要编程技巧即可实现,不过其稳定性较差,一旦UI产生变化,就会影响到测试执行和最终效果。

2.5 robot framework测试

除了上述的一些测试方法外,在软件自动化测试中,还可以用一些现成的测试工具或平台,比如我们目前使用的robot framework, 这是一款通用的自动化测试框架,基于python语言编写,支持python2和python3,由关键字驱动。Robot framework 易于扩展,用户可以使用python语言扩展测试功能,创建符合自己测试需求的关键字。Robot framework 还具有强大的日志管理系统,提供html格式的测试报告和日志文件,从这些文件里可以清楚的知道每个测试用例的执行结果,所需时间和每个测试步骤的执行结果,从而可以快速找到失败的关键字,便于分析调试。

三、软件自动化测试的应用方法

软件自动化测试和软件开发,在本质上来说,并没有太大的区别,无非就是通过自动化测试工具,对所需要测试的软件展开测试,前者相当于软件开发工具,后者相当于软件过程的需求分析。在进行软件自动化测试的过程中,需要基于一定的流程来实现。

3.1测试需求分析

在进行软件测试之前,测试人员首先要对软件需求进行充分的分析和理解,了解需求的每一个细节,将需求说明书和软件设计的相关要点都覆盖进来,突出软件测试的重点。比如对于通信软件的测试,在测试需求上,就需要关注到以下几个方面:一是可用性测试,基于使用场景或是功能需求,测试软件的可用性,判定软件各项功能是否能够运行。二是可靠性测试,要对软件系统的运行可靠性展开测试,针对一些特殊、极端或是复杂条件下,测试软件运行状态,确保在处理特殊情况时,软件依然可以保持稳定的运行。三是性能测试,针对软件的功能,要测试其具体的性能,是否能够达到设计要求。四是安全性测试,测试软件抵抗外部干扰或是入侵的能力。五是恢复测试,这主要就是对软件系统的容错能力进行测试,在系统出现错误的时候,是否可以在一定时间内自动修正错误,重新启动系统。

3.2软件测试计划制定

在对需求进行充分的理解后,就可以制定一个详细的测试计划,将具体的测试对象、测试依赖的前提条件、测试目的、测试情景等基本信息确定下来,指导后续测试工作的开展。在此基础上,对软件测试所需要的时间和人力、软硬件设备、数据等资源都予以准备,确定下软件测试的大致框架。

3.3准备测试资源

在写完测试计划后,就需要准备软件测试所需要使用到的相关资源。

一是进行测试用例的设计。这就需要基于测试需求分析的结果和测试计划,根据具体的测试内容,设计针对性的测试用例。由于不是所有测试场景都适合自动化测试,因此需要提取出可以进行自动化测试的测试用例。在必要时,还可以将登录系统的用户、密码、产品等信息独立出来形成测试数据,以便能够为脚本开发起到帮助。

二是搭建测试环境,在测试用例设计完成并且通过其他测试人员的审查后,就可以开始搭建测试环境了,在具体的搭建过程中,需要关注被测系统的部署、测试工具安装、测试硬件调用以及网络设置等方面的工作。

三是编写测试脚本,根据自动化测试场景的难易程度,选择合理的方法开发脚本,编写测试程序。一般来说,可以先通过录制方式获得测试所需的信息,然后基于结构化语句控制脚本执行,同时可以插入异常判定和检查点语句,将一些普遍性、公共性的功能,构建为独立脚本,在需要时可以对数据予以参数化处理。此外还可以使用其他的高级功能编写脚本,编写完成后要反复执行,做好调试,确保其正常运行。

3.4进行软件测试

在准备好测试所需的资源和工具之后,就可以对软件展开自动化测试,在测试过程中,需要对测试结果及时进行分析,以便能够将软件中存在的问题及时处理。在测试的过程中,往往会发现一些漏洞bug,对于这些漏洞bug,需要将其记录到缺陷管理工具当中,为后期的跟踪处理打下基础。在修复漏洞bug之后,还需要对此问题展开回归测试,确认问题处置效果是否达标。另外,测试用例全部通过后,需要对所有自动化测试用例进行压力测试,以确保软件和自动化测试用例的稳定性。比如对某一个测试用例跑100遍,看它是否100遍全部可以通过,如果某次失败,就需要分析是软件的问题还是自动化测试用例的问题,然后加以优化,以确保稳定性更好。

四、结束语

软件自动化测试,这对于保障软件本身的可靠性与性能都有积极的作用。在测试中,有很多不同方法可以选择。进行实践时,要充分理解测试需求,做好测试方案设计,准备相应的测试资源,合理完成測试工作。

参考文献

[1]卫春才.软件自动化测试方法的应用分析[J].计算机产品与流通, 2020(02):35-35.

[2]李贝.对基于数据驱动的软件自动化测试框架分析[J].华东科技(综合), 2019(03):1-1.

[3]张蓝图.软件自动化测试方法的应用[J].电子技术与软件工程, 2019, 164(18):46-47.

[4]孟黎歌.关于软件测试技术与自动化测试框架模型的研究与应用[J].科学与信息化, 2019(19):28-28.

[5]艾迪安.软件自动化测试方法的研究与应用[J].中国新通信. 2016,18(17):16-17.

王静(1982-9),女,汉族,浙江杭州人,工科硕士学位,工程师,研究方向:软件自动化测试、自动化脚本开发

猜你喜欢 软件测试自动化方法 变快的方法儿童绘本(2020年5期)2020-04-07学习方法儿童故事画报(2019年5期)2019-05-26电气工程自动化中人工智能的运用科学与技术(2018年2期)2018-11-09我国农业机械自动化分析与展望农机使用与维修(2018年8期)2018-10-30电气工程及其自动化的发展现状与展望探微西部论丛(2017年8期)2017-12-01航行通告的数字化和图形化西部论丛(2017年7期)2017-11-20关于 Web 应用系统的软件测试的研究赢未来(2017年14期)2017-02-21用对方法才能瘦Coco薇(2016年2期)2016-03-22软件测试发展现状及前景的探讨数字化用户(2014年18期)2014-11-25上台前,你用什么方法消除紧张琴童(2009年8期)2009-08-12

推荐访问:及其应用 自动化 测试

《软件自动化测试方法及其应用研究.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:

文档为doc格式

一键复制全文 下载 投诉