于海杰
摘要:隨著計算機技術(shù)和互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展和深化應(yīng)用,當(dāng)前從事軟件開發(fā)的人員已經(jīng)成為一個龐大的群體,每天都不斷有新的軟件出現(xiàn)、應(yīng)用以及消亡。軟件開發(fā)的繁榮極大地促進了當(dāng)今社會的網(wǎng)絡(luò)多彩多樣化。在計算機軟件開發(fā)中,數(shù)據(jù)庫測試及時是一個重要的環(huán)節(jié)和內(nèi)容,其直接關(guān)系到軟件開發(fā)的質(zhì)量和應(yīng)用體驗,能比較直觀的反應(yīng)軟件開發(fā)過程中的問題和缺陷,驗證軟件的功能以及實用性。本文對計算機軟件開發(fā)中數(shù)據(jù)庫測試技術(shù)的必要性進行介紹,并分析其測試的作用和原因,介紹計算機軟件開發(fā)中數(shù)據(jù)庫測試內(nèi)容,并對常用的數(shù)據(jù)庫測試技術(shù)進行探究和討論,為計算機軟件開發(fā)的數(shù)據(jù)庫測試技術(shù)的應(yīng)用提供一定的參考和借鑒意義。
關(guān)鍵詞:計算機;軟件開發(fā);數(shù)據(jù)庫;測試技術(shù)
中圖分類號:TP3? ? ? 文獻標(biāo)識碼:A
文章編號:1009-3044(2020)30-0023-02
近年來,計算機技術(shù)和互聯(lián)網(wǎng)技術(shù)的發(fā)展進入了深化應(yīng)用的發(fā)展階段,大數(shù)據(jù)技術(shù)、云計算技術(shù)、物聯(lián)網(wǎng)技術(shù)以及5G通信技術(shù)的出現(xiàn)極大地推動了商業(yè)模式的變革以及生活方式的變革。軟件成為這些技術(shù)應(yīng)用的基礎(chǔ),成為我們生產(chǎn)生活中不可缺少的部分,在極大提高生產(chǎn)生活便利性的同時也極大地促進了生產(chǎn)生活的進步和發(fā)展。軟件的出現(xiàn)和實現(xiàn)基于計算機軟件開發(fā),在軟件開發(fā)中數(shù)據(jù)庫測試技術(shù)是一個極為重要的技術(shù)。數(shù)據(jù)庫是軟件應(yīng)用的基礎(chǔ)和大腦,數(shù)據(jù)庫測試技術(shù)直接關(guān)系到軟件開發(fā)的質(zhì)量。數(shù)據(jù)庫的開發(fā)設(shè)計復(fù)雜,在軟件的實際應(yīng)用中如果數(shù)據(jù)庫的設(shè)計不到位或不合理,極容易出現(xiàn)數(shù)據(jù)庫問題,影響軟件的使用,因此,數(shù)據(jù)庫測試技術(shù)的開發(fā)應(yīng)用可以有效地促進軟件開發(fā)的發(fā)展。
1數(shù)據(jù)庫測試技術(shù)應(yīng)用的必要性
數(shù)據(jù)庫測試技術(shù)是計算機技術(shù)應(yīng)用和發(fā)展到一定階段而必然會出現(xiàn)的技術(shù),并且隨著計算機技術(shù)和互聯(lián)網(wǎng)技術(shù)的深化發(fā)展和應(yīng)用,數(shù)據(jù)庫測試技術(shù)的作用將越來越重要,應(yīng)用也將越來越廣泛。在以往的計算機軟件開發(fā)中,軟件的代碼編譯與功能應(yīng)用是關(guān)鍵,主要是由于互聯(lián)網(wǎng)的接入人數(shù)太少,對于軟件的數(shù)據(jù)庫負荷要求不大。但是我國近年來的互聯(lián)網(wǎng)發(fā)展極為迅速,基本實現(xiàn)了全境覆蓋,接入互聯(lián)網(wǎng)的人數(shù)已經(jīng)成為世界第一,互聯(lián)網(wǎng)的應(yīng)用也越來越深化,與之對應(yīng)地出現(xiàn)了物聯(lián)網(wǎng)技術(shù)、云技術(shù)以及大數(shù)據(jù)技術(shù)等,對軟件數(shù)據(jù)庫的要求也越來越高。在互聯(lián)網(wǎng)的發(fā)展過程中,已經(jīng)出現(xiàn)了多次因數(shù)據(jù)庫問題而出現(xiàn)的軟件宕機的情況,最為標(biāo)志性的軟件問題是12306鐵路購票軟件的數(shù)據(jù)庫問題。由于在節(jié)日,尤其是春運期間,全國人民對鐵路購票短時間內(nèi)的集中訪問,12306軟件的數(shù)據(jù)庫無法承受這樣強度的訪問需求,在12306軟件上線初期出現(xiàn)了多次宕機情況,極大地影響了軟件的應(yīng)用。從以上事件可以看出,數(shù)據(jù)庫測試技術(shù)對于軟件開發(fā)的重要性和必要性。數(shù)據(jù)庫測試技術(shù)可以提高軟件的安全性和穩(wěn)定性,可以使軟件設(shè)計更加科學(xué)合理。
2計算機軟件開發(fā)中的數(shù)據(jù)庫測試原因介紹
計算機開發(fā)中數(shù)據(jù)庫測試技術(shù)可以極大地提高軟件的穩(wěn)定性和安全性,提升軟件的性能。數(shù)據(jù)庫測試技術(shù)主要分為兩種形式,一是以需求為基礎(chǔ)進行數(shù)據(jù)庫測試;二是對數(shù)據(jù)庫進行實體應(yīng)用的測試。數(shù)據(jù)庫的實體應(yīng)用測試可以全方位地對軟件功能進行檢查和應(yīng)用,及時發(fā)現(xiàn)缺陷和問題,為設(shè)計人員對軟件優(yōu)化設(shè)計提供重要依據(jù)。從原因上分析,進行數(shù)據(jù)庫測試主要分為主觀與客觀兩個方面:
2.1數(shù)據(jù)庫測試的主觀方面原因
由于在計算機軟件發(fā)展的初期,開發(fā)人員在軟件開發(fā)中更加重視代碼編譯以及功能設(shè)計等方面的開發(fā),這造成了一定的軟件開發(fā)慣性,對數(shù)據(jù)庫的開發(fā)重視不足。但是隨著互聯(lián)網(wǎng)上網(wǎng)人數(shù)的增加,對于軟件的穩(wěn)定性與訪問接入量的要求更高,數(shù)據(jù)庫在軟件開發(fā)中占據(jù)了越來越重要的位置。這造成了軟件開發(fā)的側(cè)重點與軟件應(yīng)用實際需求的側(cè)重點不一致的問題,而且很多軟件開發(fā)人員還沒有意識到數(shù)據(jù)庫的重要性,從而影響了軟件開發(fā)的質(zhì)量。數(shù)據(jù)庫測試技術(shù)的應(yīng)用可以為軟件開發(fā)中數(shù)據(jù)庫的設(shè)計提供保障,對軟件的開發(fā)和應(yīng)用極為關(guān)鍵,提高軟件開發(fā)中數(shù)據(jù)庫的重要性,進而提高軟件開發(fā)的質(zhì)量。
2.2 數(shù)據(jù)庫測試的客觀方面原因
數(shù)據(jù)庫是軟件設(shè)計和應(yīng)用的基礎(chǔ),是軟件的大腦和心臟。根據(jù)不同軟件的應(yīng)用方式與基本需求,對數(shù)據(jù)庫的設(shè)計要求也不同,應(yīng)用的數(shù)據(jù)庫測試技術(shù)也不同。目前數(shù)據(jù)庫的測試方式主要分為第一范式、第二范式、第三范式、第四范式、第五范式和BC-NF范式等。相對而言,第三范式的應(yīng)用較為廣泛和成熟,但是依然存在著很多問題,比如第三范式存在著表格數(shù)量關(guān)聯(lián)過多的問題,進行資料查詢時效率比較低。因此,在軟件開發(fā)設(shè)計中,數(shù)據(jù)庫的重要性客觀上決定了軟件開發(fā)中需要進行數(shù)據(jù)庫測試,而其測試方式也與軟件本身的功能和需求有關(guān)。
3計算機軟件開發(fā)中的數(shù)據(jù)庫測試內(nèi)容分析
3.1容量測試
數(shù)據(jù)庫的容量測試是較為重要的測試之一,隨著互聯(lián)網(wǎng)上網(wǎng)人數(shù)的增多以及通信技術(shù)的發(fā)展,人們對軟件的使用頻率和數(shù)據(jù)傳輸量都不斷上升,每時每刻的產(chǎn)生的數(shù)據(jù)量都是一個恐怖的數(shù)字。數(shù)據(jù)庫的容量決定了軟件對于數(shù)據(jù)訪問的分析處理水平,決定了軟件的用戶量。因此在進行軟件開發(fā)的數(shù)據(jù)庫設(shè)計時要充分考慮軟件未來的發(fā)展性,對軟件未來的數(shù)據(jù)容量需求進行預(yù)估。然后應(yīng)用數(shù)據(jù)庫測試技術(shù),根據(jù)預(yù)估結(jié)果進行全面的考察,確定可參考的真實數(shù)據(jù),考慮實際情況與軟件的應(yīng)用情況對數(shù)據(jù)庫進行全面科學(xué)的容量測試,為軟件開發(fā)打下良好的基礎(chǔ)。對數(shù)據(jù)庫的容量進行預(yù)估測量時為提高其準(zhǔn)確性和科學(xué)性可以應(yīng)用相關(guān)的評估軟件,除了在設(shè)計時對軟件進行有效的容量測試外,在軟件的應(yīng)用時也要針對軟件進行容量測試,根據(jù)實際的數(shù)據(jù)量的增加與發(fā)展,保證數(shù)據(jù)庫信息存儲的時效性,及時對數(shù)據(jù)庫進行升級與維護,優(yōu)化數(shù)據(jù)庫中的字節(jié)與字段。
3.2性能測試
數(shù)據(jù)庫的性能測試直接關(guān)系到計算機軟件使用的穩(wěn)定性,如果數(shù)據(jù)庫的性能不足會導(dǎo)致軟件崩潰問題,造成軟件無法使用,進而造成用戶流失,影響軟件的發(fā)展。因此,在軟件開發(fā)之時,要針對軟件的應(yīng)用進行有效的數(shù)據(jù)庫性能測試,使數(shù)據(jù)庫滿足軟件的應(yīng)用需求,發(fā)揮出自己的作用,提高軟件使用的流暢度。但是對于數(shù)據(jù)庫的性能測試很難通過手工測試完成,實際的測試工作主要通過性能測試軟件完成。在軟件投入使用前,要利用輔助的性能測試軟件模擬軟件應(yīng)用中各種的實際情況以及各種不同的條件,并完成軟件基礎(chǔ)性的性能檢測,提高軟件數(shù)據(jù)庫的使用效率。進行數(shù)據(jù)庫的性能測試時不僅要對軟件初期的數(shù)據(jù)庫進行測試,還要對模擬長期使用后的軟件數(shù)據(jù)庫進行性能測試,如果測試的結(jié)果存在著容量差異,要結(jié)合實際情況對影響因素進行判斷,并進行調(diào)整和優(yōu)化,解決數(shù)據(jù)庫中存在的問題和缺陷,以上的測試為保證結(jié)果的準(zhǔn)確性,應(yīng)該保證測試環(huán)境的一致性。在實際的性能測試中,目前常用的性能測試軟件為FDactorya-ta,該軟件具有強大的數(shù)據(jù)生產(chǎn)能力,可以對軟件應(yīng)用中的實際情境進行較為真實的模擬,保證測試的真實性和準(zhǔn)確性。此外,該軟件還可以根據(jù)一系列的測試結(jié)果生產(chǎn)數(shù)據(jù)庫測試的信息庫,不同的測試之間可以進行測試結(jié)果的對比分析。數(shù)據(jù)庫的性能測試對于軟件開發(fā)極為重要,隨著物聯(lián)網(wǎng)技術(shù)、5G技術(shù)、人工智能技術(shù)以及互聯(lián)網(wǎng)技術(shù)的深化發(fā)展,未來的數(shù)據(jù)量比較呈幾何倍數(shù)的上升,數(shù)據(jù)庫的性能測試也變得更為重要和關(guān)鍵。
3.3壓力測試
計算機軟件的數(shù)據(jù)庫建立成功后,首先要做的就是壓力測試,也就是BOG測試。數(shù)據(jù)庫的壓力測試結(jié)果是對軟件功能開發(fā)設(shè)計是否達到軟件應(yīng)用要求的直觀反應(yīng)和質(zhì)量評價。壓力測試并不是軟件的功能測試,其測試內(nèi)容輸出非功能測試,主要測試指標(biāo)為軟件應(yīng)用中的響應(yīng)速度,是對軟性系統(tǒng)的算法、數(shù)據(jù)量與數(shù)據(jù)量級聯(lián)方法的綜合評價。所謂的響應(yīng)速度指的是軟件對操作指令的反應(yīng)時間,對軟件壓力測試的結(jié)果影響較大的因素是軟件數(shù)據(jù)庫自身的算法以及用戶的使用習(xí)慣等因素,在軟件的高峰使用時間,大量用戶的集中使用和訪問會對軟件的功能造成一定的影響。當(dāng)使用人數(shù)超出軟件的承載能力時就會造成軟件的崩潰,導(dǎo)致軟件無法使用。比如,近年來出現(xiàn)的雙11購物節(jié),在11月11日當(dāng)天,各大購物軟件的訪問量都集中到了一個恐怖的數(shù)量級,但是各種購物軟件依然可以保持良好的體驗,這就是壓力測試的成果。針對軟件開發(fā)時的數(shù)據(jù)庫進行壓力測試,可以提高軟件應(yīng)對極端情況的能力,保證軟件的穩(wěn)定性。
3.4數(shù)據(jù)一致性測試
數(shù)據(jù)庫測試技術(shù)中數(shù)據(jù)一致性測試也非常關(guān)鍵,其主要分為三個方面,分別是表主鍵測試、表與表主外鍵測試以及刪除一致性測試,以下分別進行介紹:
1)表主鍵測試:表主鍵測試的目的是保障系統(tǒng)的設(shè)計需求與表主鍵信息記錄的一致性,在進行表主鍵測試時首先要檢查兩者是否一致,這就要求測試人員對兩者有深入的認識,可以結(jié)合兩者的內(nèi)容進行表主鍵的一致性測試,當(dāng)測試的結(jié)果出現(xiàn)不一致時,表現(xiàn)為不唯一記錄,那么就需要對其進行重新定義,保證表主鍵的一致性;當(dāng)測試結(jié)果表示一致性時即無記錄顯示時,表示表主鍵處于一致性狀態(tài),無須進行重新定義;
2)表與表主外鍵關(guān)系測試:該項測試的目的是要保證關(guān)鍵字段的信息內(nèi)容、長度以及類型都符合數(shù)據(jù)庫的一致性要求。其直接影響到關(guān)鍵字搜索的準(zhǔn)確性與結(jié)果;
3)刪除一致性測試:刪除一致性指的是用戶在刪除主表信息時,與其有所聯(lián)系的報表中的信息也同時自動被刪除。刪除一致性可以極大地提高信息處理的效率,并且可以及時更新數(shù)據(jù)庫的信息,保證信息的實時性和一直性,此外可以有效節(jié)約數(shù)據(jù)庫的容量,提升數(shù)據(jù)庫的利用率。
4結(jié)束語
當(dāng)今時代,網(wǎng)絡(luò)信息技術(shù)革命性的發(fā)展,5G技術(shù)、大數(shù)據(jù)技術(shù)、云計算技術(shù)、人工智能技術(shù)以及物聯(lián)網(wǎng)技術(shù)都不斷獲得新的突破和應(yīng)用。在可預(yù)見的未來,數(shù)據(jù)量的爆發(fā)式增長是必然趨勢。數(shù)據(jù)庫測試技術(shù)可以顯著提高計算機軟件的性能和質(zhì)量,為了適應(yīng)新時代的發(fā)展和要求,在計算機軟件開發(fā)中,數(shù)據(jù)庫測試將占有越來越重要的地位,因此,數(shù)據(jù)庫測試技術(shù)的研究和應(yīng)用也將變得越來越關(guān)鍵。
參考文獻:
[1] 李俊梅.計算機軟件開發(fā)中的數(shù)據(jù)庫測試技術(shù)探討[J].中國新通信,2019,21(9):159-160.
[2] 陳紅艷.探究計算機軟件開發(fā)視角下的數(shù)據(jù)庫測試技術(shù)[J].河北農(nóng)機,2019(7):68.
[3] 翁冰冰,李玉壯,鐘佰霖,任利峰.基于計算機軟件開發(fā)中的數(shù)據(jù)庫測試技術(shù)分析[J].產(chǎn)業(yè)與科技論壇,2019,18(9):83-84.
[4] 孫華友.計算機軟件開發(fā)中的數(shù)據(jù)庫測試技術(shù)研究[J].常州信息職業(yè)技術(shù)學(xué)院學(xué)報,2017,16(6):25-27.
[5] 郭洪飛.計算機軟件開發(fā)中的數(shù)據(jù)庫測試技術(shù)分析[J].計算機產(chǎn)品與流通,2017(10):28,52.
【通聯(lián)編輯:張薇】