袁玥
北京文思海辉金信软件有限公司300400
摘要:本文以大数据背景下软件测试为研究对象,在对大数据特征全面分析的基础之上,重点论述了大数据背景之下的软件测试步骤及发展方向。
关键字:软件测试;大数据;发展方向
随着时代的不断变迁,人们已经迈入大数据时代,促使当前计算机、物联网、互联网技术得到有效的升级和创新。而在大数据视域下,企业单位的发展并不是仅依靠着对海量数据的掌握和存储,还需具备较强的大数据处理能力。针对大数据而言,具备数据量大、信息处理效率高、数据类型复杂、价值密度低等特点,所以针对大数据的处理,无法再应用传统数据处理技术。而这就导致软件测试形式、技术出现不同程度的转变。所以,进行软件测试技术的研究,具有长远发展意义。
1大数据特征
进入大数据时代,信息数据获取、应用和分析的重要性不言而喻,对大数据技术进行应用,需要综合考虑大数据特征,利用大数据优势,对目前软件测试方法进行升级,提升信息发掘和应用水平。大数据技术目前主要呈现以下特征。
第一,大数据自身体量十分庞大,通过对多种类型数据的存储和分析,能够满足用户信息应用需求。在数据信息的初始开发环节,应将工作重点放在服务模式创新研发,对数据来源进行严格管理,确保信息获取真实性,形成对数据使用人员的合理有效指导。
第二,大数据种类较多,数据获取途径包括互联网、传感器和物联网等渠道,具体应用环节,不仅依托大数据技术,而且,对网页、图片、音频和视频等半结构化数据也存在紧密关系。同时,考虑到大数据具有较低的价值密度,数据技术应用过程中,需要对数据信息进行必要的过滤与分析,抽取对使用者具有价值的信息,这一过程也是大数据技术分析整理数据的过程。
第三,大数据对信息处理的速度较快,与传统信息获取方式比较,大数据具有较低的时延性,对提升数据信息挖掘能力产生深远影响。
实践应用中,大数据技术优势主要通过计算机软件表达,对计算机软件进行测试与升级,明确软件测试应用使用价值,对大数据背景下软件技术合理开发产生重要意义。
2大数据背景下软件功能测试步骤
2.1数据预处理验证
数据预处理是大数据软件测试第一步,为预hadoop阶段。该阶段主要开展如下验证工作:(1)对关联数据库、日志系统、社交网络及其文本等相关数据资源进行验证;(2)对加载到hadoop系统中的数据和原始数据进行一致性验证;(3)对数据正确性提取和加载HDFS中数据节点进行验证。
2.2MapReduce验证
经过上述过程后,数据被成功加载到HDFS,然后利用Map Reduce对数据进行处理。Map Reduce作为一种面向大数据处理的软件技术,能够进行大规模的数据并行处理,对此进行如下测试验证工作:(1)Map Reduce处理后正常运行的期望文件验证;(2)对数据进行聚合和隔离规则验证;(3)验证数据Key-value关系是够正确;(4)验证Map Reduce后的数据是否正确无误。
2.3数据仓库验证
根据业务逻辑要求进行处理后的数据最终将按用户需求导入到数据仓库。在这个阶段需要验证数据转换规则是否正确应用,仓库中的数据是否有损坏、数据完整性约束使用是否正确等。此外进一步进行分析报表验证,确保导入数据仓库中数据是否满足用户需求和业务需求。
3大数据背景下软件测试技术的发展方向分析
3.1发展多元化的软件测试技术
传统的软件测试过程中,常用的测试方法有如下几类:
(1)静态与动态测试。无需运行软件的测试方法是静态测试,主要检查部分代码以及文档;需要运行软件的测试方法为动态测试,通过实际的输出结果和预期结果的对比来判定程序的正确性。
(2)白盒与黑盒测试。白盒测试又称为结构测试,依据程序内部逻辑结构来对程序进行测试;黑盒测试又称为功能测试,无需考虑代码,只需注重输入数据和输出数据。
(3)单元测试、集成测试、系统测试和验收测试。根据测试的不同阶段,由不同的测试人员负责执行不同的测试用例,将软件从最初的一个模块一步步地集成为最终的软件系统,并通过最终的用户测试。
在大数据背景下,单一的测试方法不能完全满足测试要求,难以把控或检测出软件的缺陷。因此,多元化的软件测试技术的发展和应用是必须的。从三个方面来改进软件测试技术,一是对传统测试方法进行改造,二是在测试过程中根据软件系统实际需要,综合使用多种测试方法;三是利用新的软件开发技术来创新软件测试方法。只有这样,面对日益复杂的软件环境,测试技术才能及时跟上,才能让最终的软件产品质量得以保证。
3.2运用智能化手段构建面向云计算的自动化测试环境
随着信息时代的飞速来临,以大数据为基础的云计算和人工智能等信息化技术的发展十分迅速,与此同时形成的多种软件操作系统也为软件测试技术的发展带来了全新的发展机遇。软件化测试过程中的智能技术主要体现在两个方面,首先,对数据的合法性监测及规范性要求;其次,对数据输出样本的持续性分布检测,以及对设计方案的评判标准进行评定。大数据的发展形势能够游戏哦啊解决不同输输出流量之间的差异问题,从而实现数据间转换操作的规范性,推动软件测试技术不断向前发展。智能构建的云平台技术能够为软件测试提供完整和安全的测试环境、工具以及程序流程,不仅能够充分节约时间,还能够引导测试人员将业务重点集中到软件测试的程序设计和实践上来,从而形成良好的拓展伸缩环境,减少测试出现的风险几率和时间。如阿里巴巴的云上企业级一站式智能研发协同平台和华为的CloudIDE,都集成了软件测试的功能和模块。同时,这些平台运行过程中的一些质量和安全问题也需要通过软件测试技术来不断完善和发展,因此,目前的软件测试技术主要是集中在性能分析、异常反应处理以及紧急容灾处理等相关的安全性能方面。
3.3保障和提升软件测试数据的有效性和准确性
在软件测试过程中,往往存在一些无效数据或者无意义的数据,这些数据形成的无效测试用例会直接或者间接的影响测试效果,甚至可能会对所测的软件系统有潜在的破坏作用。因此,要全面提高测试数据的有效性和准确性,以此来确保软件测试过程的质量,尽量避免或者降低由于数据问题而导致的测试效果不尽如人意的现象。
除此之外,提升软件测试数据的有效性和准确性还需要软件测试人员进一步强化对软件业务领域知识的学习。只有深入理解了业务渠道和业务流程,掌握了业务知识,才能模拟设计出真实而有效的测试用例和测试数据,在源头上杜绝问题数据的发生,保持测试数据的有效性和准确性,让测试效果达到最好的目标。
4结论
在大数据时代,对于软件的要求也越来越高,很多软件从形态上发生了改变,传统的软件测试方法很难满足如今的大数据处理要求,需要通过不断的尝试和探索发现新的软件测试方法,让软件测试技术从传统的单一测试向着多元的测试转变,确保这些测试技术在实践中可以有效地降低在使用软件的过程中发生故障的频率,提高计算机运行的安全性和稳定性。此外,软件测试应该满足客户的需求,并且要在软件开发的初期就进行软件测试,并随着工作的进度不断地进行软件测试,通过了解软件测试的难易度来制定出一套完整的测试流程,并对可能出现的结果进行判断,以不断提高软件的质量。
参考文献
[1]林勤花.大数据背景下软件测试技术研究[J].电脑知识与技术,2020,16(05):72-73.
[2]杨晓庆.大数据背景下软件测试技术研究[J].信息与电脑,2020,32(03):65-66+69.