计算机软件开发的数据库测试技术探讨

2020-12-29 11:56于海杰
电脑知识与技术 2020年30期
关键词:测试技术软件开发计算机

于海杰

摘要:随着计算机技术和互联网技术的迅速发展和深化应用,当前从事软件开发的人员已经成为一个庞大的群体,每天都不断有新的软件出现、应用以及消亡。软件开发的繁荣极大地促进了当今社会的网络多彩多样化。在计算机软件开发中,数据库测试及时是一个重要的环节和内容,其直接关系到软件开发的质量和应用体验,能比较直观的反应软件开发过程中的问题和缺陷,验证软件的功能以及实用性。本文对计算机软件开发中数据库测试技术的必要性进行介绍,并分析其测试的作用和原因,介绍计算机软件开发中数据库测试内容,并对常用的数据库测试技术进行探究和讨论,为计算机软件开发的数据库测试技术的应用提供一定的参考和借鉴意义。

关键词:计算机;软件开发;数据库;测试技术

中图分类号:TP3      文献标识码:A

文章编号:1009-3044(2020)30-0023-02

近年来,计算机技术和互联网技术的发展进入了深化应用的发展阶段,大数据技术、云计算技术、物联网技术以及5G通信技术的出现极大地推动了商业模式的变革以及生活方式的变革。软件成为这些技术应用的基础,成为我们生产生活中不可缺少的部分,在极大提高生产生活便利性的同时也极大地促进了生产生活的进步和发展。软件的出现和实现基于计算机软件开发,在软件开发中数据库测试技术是一个极为重要的技术。数据库是软件应用的基础和大脑,数据库测试技术直接关系到软件开发的质量。数据库的开发设计复杂,在软件的实际应用中如果数据库的设计不到位或不合理,极容易出现数据库问题,影响软件的使用,因此,数据库测试技术的开发应用可以有效地促进软件开发的发展。

1数据库测试技术应用的必要性

数据库测试技术是计算机技术应用和发展到一定阶段而必然会出现的技术,并且随着计算机技术和互联网技术的深化发展和应用,数据库测试技术的作用将越来越重要,应用也将越来越广泛。在以往的计算机软件开发中,软件的代码编译与功能应用是关键,主要是由于互联网的接入人数太少,对于软件的数据库负荷要求不大。但是我国近年来的互联网发展极为迅速,基本实现了全境覆盖,接入互联网的人数已经成为世界第一,互联网的应用也越来越深化,与之对应地出现了物联网技术、云技术以及大数据技术等,对软件数据库的要求也越来越高。在互联网的发展过程中,已经出现了多次因数据库问题而出现的软件宕机的情况,最为标志性的软件问题是12306铁路购票软件的数据库问题。由于在节日,尤其是春运期间,全国人民对铁路购票短时间内的集中访问,12306软件的数据库无法承受这样强度的访问需求,在12306软件上线初期出现了多次宕机情况,极大地影响了软件的应用。从以上事件可以看出,数据库测试技术对于软件开发的重要性和必要性。数据库测试技术可以提高软件的安全性和稳定性,可以使软件设计更加科学合理。

2计算机软件开发中的数据库测试原因介绍

计算机开发中数据库测试技术可以极大地提高软件的稳定性和安全性,提升软件的性能。数据库测试技术主要分为两种形式,一是以需求为基础进行数据库测试;二是对数据库进行实体应用的测试。数据库的实体应用测试可以全方位地对软件功能进行检查和应用,及时发现缺陷和问题,为设计人员对软件优化设计提供重要依据。从原因上分析,进行数据库测试主要分为主观与客观两个方面:

2.1数据库测试的主观方面原因

由于在计算机软件发展的初期,开发人员在软件开发中更加重视代码编译以及功能设计等方面的开发,这造成了一定的软件开发惯性,对数据库的开发重视不足。但是随着互联网上网人数的增加,对于软件的稳定性与访问接入量的要求更高,数据库在软件开发中占据了越来越重要的位置。这造成了软件开发的侧重点与软件应用实际需求的侧重点不一致的问题,而且很多软件开发人员还没有意识到数据库的重要性,从而影响了软件开发的质量。数据库测试技术的应用可以为软件开发中数据库的设计提供保障,对软件的开发和应用极为关键,提高软件开发中数据库的重要性,进而提高软件开发的质量。

2.2 数据库测试的客观方面原因

数据库是软件设计和应用的基础,是软件的大脑和心脏。根据不同软件的应用方式与基本需求,对数据库的设计要求也不同,应用的数据库测试技术也不同。目前数据库的测试方式主要分为第一范式、第二范式、第三范式、第四范式、第五范式和BC-NF范式等。相对而言,第三范式的应用较为广泛和成熟,但是依然存在着很多问题,比如第三范式存在着表格数量关联过多的问题,进行资料查询时效率比较低。因此,在软件开发设计中,数据库的重要性客观上决定了软件开发中需要进行数据库测试,而其测试方式也与软件本身的功能和需求有关。

3计算机软件开发中的数据库测试内容分析

3.1容量测试

数据库的容量测试是较为重要的测试之一,随着互联网上网人数的增多以及通信技术的发展,人们对软件的使用频率和数据传输量都不断上升,每时每刻的产生的数据量都是一个恐怖的数字。数据库的容量决定了软件对于数据访问的分析处理水平,决定了软件的用户量。因此在进行软件开发的数据库设计时要充分考虑软件未来的发展性,对软件未来的数据容量需求进行预估。然后应用数据库测试技术,根据预估结果进行全面的考察,确定可参考的真实数据,考虑实际情况与软件的应用情况对数据库进行全面科学的容量测试,为软件开发打下良好的基础。对数据库的容量进行预估测量时为提高其准确性和科学性可以应用相关的评估软件,除了在设计时对软件进行有效的容量测试外,在软件的应用时也要针对软件进行容量测试,根据实际的数据量的增加与发展,保证数据库信息存储的时效性,及时对数据库进行升级与维护,优化数据库中的字节与字段。

3.2性能测试

数据库的性能测试直接关系到计算机软件使用的稳定性,如果数据库的性能不足会导致软件崩溃问题,造成软件无法使用,进而造成用户流失,影响软件的发展。因此,在软件开发之时,要针对软件的应用进行有效的数据库性能测试,使数据库满足软件的应用需求,发挥出自己的作用,提高软件使用的流畅度。但是对于数据库的性能测试很难通过手工测试完成,实际的测试工作主要通过性能测试软件完成。在软件投入使用前,要利用辅助的性能测试软件模拟软件应用中各种的实际情况以及各种不同的条件,并完成软件基础性的性能检测,提高软件数据库的使用效率。进行数据库的性能测试时不仅要对软件初期的数据库进行测试,还要对模拟长期使用后的软件数据库进行性能测试,如果测试的结果存在着容量差异,要结合實际情况对影响因素进行判断,并进行调整和优化,解决数据库中存在的问题和缺陷,以上的测试为保证结果的准确性,应该保证测试环境的一致性。在实际的性能测试中,目前常用的性能测试软件为FDactorya-ta,该软件具有强大的数据生产能力,可以对软件应用中的实际情境进行较为真实的模拟,保证测试的真实性和准确性。此外,该软件还可以根据一系列的测试结果生产数据库测试的信息库,不同的测试之间可以进行测试结果的对比分析。数据库的性能测试对于软件开发极为重要,随着物联网技术、5G技术、人工智能技术以及互联网技术的深化发展,未来的数据量比较呈几何倍数的上升,数据库的性能测试也变得更为重要和关键。

3.3压力测试

计算机软件的数据库建立成功后,首先要做的就是压力测试,也就是BOG测试。数据库的压力测试结果是对软件功能开发设计是否达到软件应用要求的直观反应和质量评价。压力测试并不是软件的功能测试,其测试内容输出非功能测试,主要测试指标为软件应用中的响应速度,是对软性系统的算法、数据量与数据量级联方法的综合评价。所谓的响应速度指的是软件对操作指令的反应时间,对软件压力测试的结果影响较大的因素是软件数据库自身的算法以及用户的使用习惯等因素,在软件的高峰使用时间,大量用户的集中使用和访问会对软件的功能造成一定的影响。当使用人数超出软件的承載能力时就会造成软件的崩溃,导致软件无法使用。比如,近年来出现的双11购物节,在11月11日当天,各大购物软件的访问量都集中到了一个恐怖的数量级,但是各种购物软件依然可以保持良好的体验,这就是压力测试的成果。针对软件开发时的数据库进行压力测试,可以提高软件应对极端情况的能力,保证软件的稳定性。

3.4数据一致性测试

数据库测试技术中数据一致性测试也非常关键,其主要分为三个方面,分别是表主键测试、表与表主外键测试以及删除一致性测试,以下分别进行介绍:

1)表主键测试:表主键测试的目的是保障系统的设计需求与表主键信息记录的一致性,在进行表主键测试时首先要检查两者是否一致,这就要求测试人员对两者有深入的认识,可以结合两者的内容进行表主键的一致性测试,当测试的结果出现不一致时,表现为不唯一记录,那么就需要对其进行重新定义,保证表主键的一致性;当测试结果表示一致性时即无记录显示时,表示表主键处于一致性状态,无须进行重新定义;

2)表与表主外键关系测试:该项测试的目的是要保证关键字段的信息内容、长度以及类型都符合数据库的一致性要求。其直接影响到关键字搜索的准确性与结果;

3)删除一致性测试:删除一致性指的是用户在删除主表信息时,与其有所联系的报表中的信息也同时自动被删除。删除一致性可以极大地提高信息处理的效率,并且可以及时更新数据库的信息,保证信息的实时性和一直性,此外可以有效节约数据库的容量,提升数据库的利用率。

4结束语

当今时代,网络信息技术革命性的发展,5G技术、大数据技术、云计算技术、人工智能技术以及物联网技术都不断获得新的突破和应用。在可预见的未来,数据量的爆发式增长是必然趋势。数据库测试技术可以显著提高计算机软件的性能和质量,为了适应新时代的发展和要求,在计算机软件开发中,数据库测试将占有越来越重要的地位,因此,数据库测试技术的研究和应用也将变得越来越关键。

参考文献:

[1] 李俊梅.计算机软件开发中的数据库测试技术探讨[J].中国新通信,2019,21(9):159-160.

[2] 陈红艳.探究计算机软件开发视角下的数据库测试技术[J].河北农机,2019(7):68.

[3] 翁冰冰,李玉壮,钟佰霖,任利峰.基于计算机软件开发中的数据库测试技术分析[J].产业与科技论坛,2019,18(9):83-84.

[4] 孙华友.计算机软件开发中的数据库测试技术研究[J].常州信息职业技术学院学报,2017,16(6):25-27.

[5] 郭洪飞.计算机软件开发中的数据库测试技术分析[J].计算机产品与流通,2017(10):28,52.

【通联编辑:张薇】

猜你喜欢
测试技术软件开发计算机
计算机操作系统
基于计算机自然语言处理的机器翻译技术应用与简介
信息系统审计中计算机审计的应用
Fresnel衍射的计算机模拟演示
基于虚拟仪器的测试技术融合性教学