优胜从选择开始,我们是您最好的选择!—— 中州期刊联盟
  匿名投稿

0373-5939925

您的位置:网站首页 > 优秀论文 > 科技论文 > 正文

大数据时代下的软件测试技术研究

作者:苗长芬来源:《企业科技与发展》日期:2019-03-30人气:66

大数据是指无法在一定时间内利用常规软件进行捕捉、管理与处理的数据集合,具数据量大、数据类型多、数据价值密度低和数据处理速度快等特征。大数据时代最早源于麦肯锡公司,其指出现数据已遍布至各行业及领域,后阿里巴巴创始人马云也提出,未来人们将进入大数据时代。伴随时代的不断进步,以及科学技术的不断发展,在大数据时代下,硬件产品愈发复杂多样,应用范围也不断拓宽,在这种背景下,软件系统的规模不断扩大,复杂性不断增加,为保证软件的质量与运行的安全性,软件测试技术的发展与应用至关重要。

1  大数据时代下软件测试所面临的挑战

1.1  Oracle问题愈发突出

实施软件测试的目的在于发现并找出软件的错误运行情况,而Oracle是指对测试过程是否通过的可验证进行专门判断。进入大数据时代,无论是趋势分析还是图类计算,软件测试都变得更加困难。现将大数据处理模式分为物理模式和化学模式,其中物理模式下的大数据处理是指基于确保大数据价值的前提下,不断缩小大数据的规模,并充分清洗数据的一些固定基本属性。此过程包含了很多数据处理方式,可有效实现对大数据的物理处理。据此也可以看出,处物理模式下,大数据的处理测试Oracle本身是无任何问题的。但在化学模式下,对于大数据的处理则需具备两方面问题:第一是最主要预测;第二是快速算法,此两方面问题在很大程度上加大了Oracle的难度,致Oracle变得极其困难。如在计算个性化推荐统计信息时,通过分析个性化数据,可向用户推荐出更满足用户需求的产品或商品,但这也意味着可能会有一半的用户是不喜欢这个商品的,大数据的化学处理仅能通过计算来得出用户对于某类商品的喜爱程度会更高的结果,而针法再深入进行分析。此问题的出现就表明了结果的准确性与正确性产生了本质性的偏差,也就使得Oracle更加难以确定。

1.2  传统测试平台无法满足大数据的处理需求

传统软件测试所采取的方法主要为利用控制器对本地进行协调,通过将服务请求发送至服务器端来实现对服务器压力的测试。此方法对于服务器构成较少的系统而言是非常实用的,但进入大数据时代后,尤其是云计算技术的出现与广泛应用,现需应用服务器的用户数量不断增多,其需求量也不断增加,系统的并发用户数量不断上涨,使得系统的访问量迅速加大。此时,为保证系统能够承载这巨大的用户访问量并能正常运行,就必须测试服务端系统。服务端系统测试可于系统上线前开始,先对测试内容相对充分的实施测试。但是传统的局域网测试方法则很难满足服务器的这一测试需求,因此而产生了诸多软件测试问题:第一,负载产生器的物理机数量难以获得动态拓展;第二,大数据驱动云计算,现云计算大量采取分散客户端,加大了软件测试的工作量;第三,由于大数据的推动,负载产生器状态的测试限制了系统性能的测试,致测试失败风险加大;第四,就当前而言,我国实施软件测试所使用的控制器和负载产生器的同步问题愈发复杂,严重影响了负载产生器的测试效果。

1.3  软件服务化加大了测试困难度

从开发模式方面来看,软件的开发主要包括完全编码、构建化、服务和云计算四个阶段,而在这个四个阶段当中,由于软件的服务化程度不断加深,致软件的测试困难度不断加大。首先,完全编码阶段。完全编码阶段是软件开发的基础阶段,在此阶段,研发人员可掌握除系统本身的类库以外的所有代码,用户的可测性较强,基本可应用所有调试测试盒的方法。其次,构建化阶段。在构建化阶段,开发人员的工作是基于系统类库依软件业务所需对一些可重复利用业务组建进行重新构建,以提高软件的开发效率。但这些经重新构建的组件通常只能应用于本地,业务系统具较高耦合度,用户也可更好地掌握组件。虽然用户无法对第三方组件实施内部跟踪和分析,但却可更好地跟踪其运动结构。再次,服务阶段。服务阶段即将本地所运用的组织转变为远程方式,以为用户提供更好的服务。在此阶段,用户对外部服务的掌握逐步减少,仅可通过服务输入与输出了解服务情况。最后,云计算阶段。云计算技术是伴随科学技术的发展而逐步发展起来的,进入大数据时代,现云计算技术已得到了广泛应用。在云计算阶段,用户很难了解组件的服务情况,尤其是采取PASS架构的应用程序,仅能通过输入与输出接口来了解组件的服务运行状态,这在很大程度上加了软件测试的困难度。

2  大数据时代下软件测试的未来发展

2.1  调整和优化Oracle内存区

Oracle的内存区可分为SGA和PGA两部分,其中SGA为Oracle数据库提供缓冲区,并可实现资源共享与数据日志缓冲,SGA各区域的分配是否合理直接影响着数据库系统的性能好坏,对于数据库系统性能而言至关重要。数据库存缓冲区可储存所搜索的数据,若数据库用户发出的数据请求进入了数据缓冲区,则数据库会直接将所收到的数据返还给用户,以减少用户检索时间。若数据库存用户所发出的数据请求未进入数据缓冲区,则需利用专门的服务器自数据文件当中读取,然后再将其转换至数据缓冲区,通过数据缓冲区反馈给用户,这明显延长了数据检索时间。为保证用户可迅速接收到自己所需的数据,就必须提高数据库系统性能。资源共享包括数据库缓冲与数据字典缓存两部分,数据库缓冲用于存放已执行过的代码或执行计划信息,数据字典缓存用于存放数据库相关系统的数据对象与数据库用户权限等,合理配置数据共享的这两个部分的空间,可有效提高程序的执行效率。数据日志缓冲用于存放数据库系统的修改信息,若数据日志缓冲区存在较多日志写入失败情况,表明数据库的数据日志缓冲区的容量不足,影响数据日志的存放,最终影响数据库的形成。因此,必须不断进行调整和优化。

2.2  定期整理数据库碎片

在进行实际操作时,数据库的运行是不间断的,相关数据的操作也无时无刻不在发生变化,导致数据库当中产生磁盘碎片。磁盘碎片分为表空间级、索引级与表级3个级别,其中对于表空间级的磁盘碎片进行清理的步骤如下:先利用表空间重组和命令的运行导出数据库中的数据,再利用TRUNCATE删除表空间中的数据,最后利用IMPORT程序的导入方式导入有效数据,从而清理掉表空间级中的磁盘碎片;对于索引级的磁盘碎片进行清理的方法有两种:第一种是尽量减少表空间级的相关索引数据;第二种是通过变换频率相对较低的列以重新创建索引,从而清理掉索引中的磁盘碎片;对于表级的磁盘碎片进行清理的方法较表空间级和索引级更简单,其只需合理配置并设置系统数据块的大小,同时应用相关PCEFREE数据参数即可进行有效清理,并可避免磁盘碎片的产生。

2.3  提高软件测试数据的准确性

软件测试效果差的很大的原因在于数据存储的模糊认识与无用重复请求的发送引起错误信息的出现,使得数据信息准确性下降。为此,若要应用数据库,应先对数据库所使用软件实施多次测试,并确保软件测试的质量和数据的准确性,尽量降低因数据错误而产生的影响。另,相关研究人员应深入对软件测试技术的研究。以往软件测试人员多数是利用某一单一软件测试技术测试软件性能,其测试结果具较大局限性。而现软件产品已遍布人们的生产与生活,若仍沿用传统的单一软件测试技术或方法,其结果就过于片面,无法保证软件运行的安全性和可靠性。为此,在软件测试工作人员应进一步深入研究软件测试技术,灵活运用各类测试技术和各种测试方法,适当使用智能化数据处理技术,以不断改进和完善软件测试体系,逐步消除软件测试的片面性,全方面应用多元化的测试技术,确保软件测试数据与信息的准确性,从而提高软件测试效率,有效避免杀虫剂现象。

3  结语

总而言之,现人们已进入大数据时代,大数据时代的到来确实给软件测试带来了诸多挑战,在一定程度上影响了软件测试技术的发展。为能更好地解决大数据时代下软件测试所存在的问题,作为软件测试工作人员,一方面要不断调整和优化Oracle的内存区;另一方面要定期整理数据库碎片;此外,还要提高软件测试数据的准确性,以确保软件测试的质量,保证软件能安全运行,促进软件测试技术的进一步发展,推动我国软件行业的快速进步。



本文来源:《企业科技与发展》:http://www.zzqklm.com/w/qk/21223.html

网络客服QQ: 沈编辑

投诉建议:0373-5939925    投诉建议QQ:

招聘合作:2851259250@qq.com (如您是期刊主编、文章高手,可通过邮件合作)

地址:河南省新乡市金穗大道东段266号中州期刊联盟 ICP备案号:豫ICP备11023190

【免责声明】:中州期刊联盟所提供的信息资源如有侵权、违规,请及时告知。

关注”中州期刊联盟”公众号