亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于數(shù)據(jù)庫應(yīng)用系統(tǒng)的數(shù)據(jù)庫測試

        2012-04-29 00:00:00陳鄭珍
        科技與生活 2012年5期

        摘 要 數(shù)據(jù)庫管理系統(tǒng)經(jīng)歷了30多年的發(fā)展演變,已經(jīng)取得了輝煌的成就,發(fā)展成了一門內(nèi)容豐富的學(xué)科。我國數(shù)據(jù)庫系統(tǒng)已經(jīng)具備了普通應(yīng)用所需的基本數(shù)據(jù)庫管理功能,也具有一定的擴展性,能夠滿足一般的應(yīng)用需求。數(shù)據(jù)庫應(yīng)用系統(tǒng)是在數(shù)據(jù)庫管理系統(tǒng)(DBMS)支持下建立的計算機應(yīng)用系統(tǒng),以數(shù)據(jù)庫為基礎(chǔ)的財務(wù)管理系統(tǒng)、人事管理系統(tǒng)、圖書管理系統(tǒng)等等為代表,其數(shù)據(jù)庫測試甚為重要。

        關(guān)鍵詞 數(shù)據(jù)庫;測試;應(yīng)用系統(tǒng);完整性

        中圖分類號 TP 文獻標識碼 A 文章編號 1673-9671-(2012)031-0112-01

        就數(shù)據(jù)庫領(lǐng)域測試而言,目前國際上的TPC組織雖然提出了性能測試標準,然而由于數(shù)據(jù)庫應(yīng)用的領(lǐng)域不同、運行的環(huán)境不同,加上數(shù)據(jù)庫管理系統(tǒng)功能、結(jié)構(gòu)日趨復(fù)雜、度量特性繁多等諸多因素,目前國際上并沒有被普遍接受的數(shù)據(jù)庫結(jié)合評測體系。

        隨著市場對軟件系統(tǒng)的要求越來越高,軟件產(chǎn)品結(jié)構(gòu)也越來越復(fù)雜,從以前的單層結(jié)構(gòu)進入了目前的雙層,三層甚至多次架構(gòu)的設(shè)計。同時,由于對數(shù)據(jù)存儲,分析,安全,性能和穩(wěn)定性的要求越來越高,數(shù)據(jù)庫也從以前一個默默無聞的后臺倉庫,逐漸成為了數(shù)據(jù)庫系統(tǒng)。同時數(shù)據(jù)庫開發(fā)設(shè)計人員和數(shù)據(jù)庫系統(tǒng)管理員成為各個公司不可或缺的重要人物。

        針對于數(shù)據(jù)庫應(yīng)用系統(tǒng)的數(shù)據(jù)庫的設(shè)計與實現(xiàn),其測試內(nèi)容大致包括:數(shù)據(jù)備份與恢復(fù)測試;故障轉(zhuǎn)移和恢復(fù)測試。

        從測試過程的角度來說我們也可以把數(shù)據(jù)庫測試分為:

        1)系統(tǒng)測試。傳統(tǒng)軟件系統(tǒng)測試的測試重點是需求覆蓋,而對于我們的數(shù)據(jù)庫測試同樣也需要對需求覆蓋進行保證。那么數(shù)據(jù)庫在初期設(shè)計中也需要對這個進行分析,測試。例如存儲過程,視圖,觸發(fā)器,約束,規(guī)則等我們都需要進行需求的驗證確保這些功能設(shè)計是符合需求的。另一方面我們需要確認數(shù)據(jù)庫設(shè)計文檔和最終的數(shù)據(jù)庫相同,當設(shè)計文檔變化時我們同樣要驗證改修改是否落實到數(shù)據(jù)庫上。

        2)集成測試。集成測試是主要針對接口進行的測試工作,從數(shù)據(jù)庫的角度來說和普通測試稍微有些區(qū)別對于數(shù)據(jù)庫測試來說,需要考慮的是數(shù)據(jù)項的修改操作、數(shù)據(jù)項的增加操作、數(shù)據(jù)項的刪除操作、數(shù)據(jù)表增加滿、數(shù)據(jù)表刪除空、刪除空表中的記錄、數(shù)據(jù)表的并發(fā)操作、針對存儲過程的接口測試、結(jié)合業(yè)務(wù)邏輯做關(guān)聯(lián)表的接口測試。

        同樣我們需要對這些接口考慮采用等價類、邊界值、錯誤猜測等方法進行測試。

        3)單元測試。單元測試側(cè)重于邏輯覆蓋,相對對于復(fù)雜的代碼來說,數(shù)據(jù)庫開發(fā)的單元測試相對簡單些,可以通過語句覆蓋和走讀的方式完成。

        系統(tǒng)測試相對來說比較困難,這要求有很高的數(shù)據(jù)庫設(shè)計能力和豐富的數(shù)據(jù)庫測試經(jīng)驗。而集成測試和單元測試就相對簡單了。

        而我們也可以從測試關(guān)注點的角度對數(shù)據(jù)庫進行分類。

        4)功能測試。對數(shù)據(jù)庫功能的測試我們可以依賴與工具進行。

        DBunit:一款開源的數(shù)據(jù)庫功能測試框架,可以使用類似與Junit的方式對數(shù)據(jù)庫的基本操作進行白盒的單元測試,對輸入輸出進行校驗。

        QTP:大名鼎鼎的自動測試工具,通過對對象的捕捉識別,我們可以通過QTP來模擬用戶的操作流程,通過其中的校驗方法或者結(jié)合數(shù)據(jù)庫后臺的監(jiān)控對整個數(shù)據(jù)庫中的數(shù)據(jù)進行測試。個人覺得比較偏向

        灰盒。

        DataFactory:一款優(yōu)秀的數(shù)據(jù)庫數(shù)據(jù)自動生成工具,通過它你可以輕松的生成任意結(jié)構(gòu)數(shù)據(jù)庫,對數(shù)據(jù)庫進行填充,幫助你生成所需要的大量數(shù)據(jù)從而驗證我們數(shù)據(jù)庫中的功能是否正確。這是屬于黑盒測試。

        數(shù)據(jù)庫性能雖然我們的硬件最近幾年進步很快,但是我們需要處理的數(shù)據(jù)以更快的速度在增加。幾億條記錄的表格在現(xiàn)在是司空見慣的,如此龐大的數(shù)據(jù)量在大量并發(fā)連接操作時,我們不能像以前一樣隨意的使用查詢,連接查詢,嵌套查詢,視圖,這些操作如果不當會給系統(tǒng)帶來非常巨大的壓力,嚴重影響系統(tǒng)性能。

        5)性能測試。我們?nèi)绾螌π阅芊矫孢M行測試呢,業(yè)界也提供了很多工具通過數(shù)據(jù)庫系統(tǒng)的SQL語句分析工具,我們可以分析得到數(shù)據(jù)庫語句執(zhí)行的瓶頸,從而優(yōu)化SQL語句。

        Loadrunner:這個不用多說,我們可以通過對協(xié)議的編程來對數(shù)據(jù)庫做壓力測試。

        Swingbench:(這是一個重量級別的feature,類似LR,而且非常強大,只不過專門針對oracle而已)數(shù)據(jù)庫廠商也意識到這點,例如oracle11g已經(jīng)提供了real applicationtest,提供數(shù)據(jù)庫性能測試,分析系統(tǒng)的應(yīng)用瓶頸。

        還有很多第三方公司開發(fā)了SQL語句優(yōu)化工具來幫助你自動的進行語句優(yōu)化工作從而提高執(zhí)行效率。

        6)安全測試。軟件日益復(fù)雜,而數(shù)據(jù)又成為了系統(tǒng)中重中之重的核心,從以往對系統(tǒng)的破壞現(xiàn)在更傾向于對數(shù)據(jù)的獲取和破壞。而數(shù)據(jù)庫的安全被提到了最前端自從SQL注入攻擊被發(fā)現(xiàn),

        在基于數(shù)據(jù)庫應(yīng)用系統(tǒng)的數(shù)據(jù)庫測試中數(shù)據(jù)庫完整性對于數(shù)據(jù)庫應(yīng)用系統(tǒng)非常關(guān)鍵,其作用主要體現(xiàn)在以下幾個方面:

        1)數(shù)據(jù)庫完整性約束能夠防止合法用戶使用數(shù)據(jù)庫時向數(shù)據(jù)庫中添加不合語義的數(shù)據(jù)。

        2)利用基于DBMS的完整性控制機制來實現(xiàn)業(yè)務(wù)規(guī)則,易于定義,容易理解,而且可以降低應(yīng)用程序的復(fù)雜性,提高應(yīng)用程序的運行效率。同時,基于DBMS的完整性控制機制是集中管理的,因此比應(yīng)用程序更容易實現(xiàn)數(shù)據(jù)庫的完整性。

        3)合理的數(shù)據(jù)庫完整性設(shè)計,能夠同時兼顧數(shù)據(jù)庫的完整性和系統(tǒng)的效能。比如裝載大量數(shù)據(jù)時,只要在裝載之前臨時使基于DBMS的數(shù)據(jù)庫完整性約束失效,此后再使其生效,就能保證既不影響數(shù)據(jù)裝載的效率又能保證數(shù)據(jù)庫的完整性。

        4)在應(yīng)用軟件的功能測試中,完善的數(shù)據(jù)庫完整性有助于盡早發(fā)現(xiàn)應(yīng)用軟件的錯誤。

        一個好的數(shù)據(jù)庫完整性設(shè)計首先需要在需求分析階段確定要通過數(shù)據(jù)庫完整性約束實現(xiàn)的業(yè)務(wù)規(guī)則,然后在充分了解特定DBMS提供的完整性控制機制的基礎(chǔ)上,依據(jù)整個系統(tǒng)的體系結(jié)構(gòu)和性能要求,遵照數(shù)據(jù)庫設(shè)計方法和應(yīng)用軟件設(shè)計方法,合理選擇每個業(yè)務(wù)規(guī)則的實現(xiàn)方式;最后,認真測試,排除隱含的約束沖突和性能問題?;贒BMS的數(shù)據(jù)庫完整性設(shè)計大體分為以下幾個階段:

        1)需求分析階段。經(jīng)過系統(tǒng)分析員、數(shù)據(jù)庫分析員、用戶的共同努力,確定系統(tǒng)模型中應(yīng)該包含的對象,如人事及工資管理系統(tǒng)中的部門、員工、經(jīng)理等,以及各種業(yè)務(wù)規(guī)則。

        在完成尋找業(yè)務(wù)規(guī)則的工作之后,確定要作為數(shù)據(jù)庫完整性的業(yè)務(wù)規(guī)則,并對業(yè)務(wù)規(guī)則進行分類。其中作為數(shù)據(jù)庫模式一部分的完整性設(shè)計按下面的過程進行。而由應(yīng)用軟件來實現(xiàn)的數(shù)據(jù)庫完整性設(shè)計將按照軟件工程的方法進行。

        2)概念結(jié)構(gòu)設(shè)計階段。概念結(jié)構(gòu)設(shè)計階段是將依據(jù)需求分析的結(jié)果轉(zhuǎn)換成一個獨立于具體DBMS的概念模型,即實體關(guān)系圖(ERD)。在概念結(jié)構(gòu)設(shè)計階段就要開始數(shù)據(jù)庫完整性設(shè)計的實質(zhì)階段,因為此階段的實體關(guān)系將在邏輯結(jié)構(gòu)設(shè)計階段轉(zhuǎn)化為實體完整性約束和參照完整性約束,到邏輯結(jié)構(gòu)設(shè)計階段將完成設(shè)計的主要工作。

        3)邏輯結(jié)構(gòu)設(shè)計階段。此階段就是將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并對其進行優(yōu)化,包括對關(guān)系模型的規(guī)范化。此時,依據(jù)DBMS提供的完整性約束機制,對尚未加入邏輯結(jié)構(gòu)中的完整性約束列表,逐條選擇合適的方式加以實現(xiàn)。

        一個基于數(shù)據(jù)庫應(yīng)用系統(tǒng)的功能、性能,安全性往往和數(shù)據(jù)庫開發(fā)有直接的關(guān)系,但是實際工作中,我們從來沒有真正將數(shù)據(jù)庫作為一個

        (下轉(zhuǎn)第126頁)

        (上接第112頁)

        獨立的系統(tǒng)進行測試,而是通過對代碼的測試工作間接對數(shù)據(jù)庫進行一定的測試,數(shù)據(jù)庫方面的測試仍然處于空白。為了進一步的提高軟件質(zhì)量和開發(fā)效率,我們必須關(guān)注數(shù)據(jù)庫測試,并且盡早的參與數(shù)據(jù)庫開發(fā)。

        參考文獻

        [1]柳純錄.軟件評測師教程 [M].清華大學(xué)出版社.

        [2]朱少民.軟件測試方法和技術(shù)[M].清華大學(xué)出版社.

        [3]http://www.51testing.com/

        作者簡介

        陳鄭珍,女,本科,廣州南洋理工職業(yè)學(xué)院教師,從事計算機軟件開發(fā)方面的教學(xué)工作,主要研究領(lǐng)域:軟件系統(tǒng)開發(fā)。

        亚洲色四在线视频观看| 视频在线观看国产自拍 | 亚洲av综合日韩精品久久久| 一区二区三区高清视频在线| 在线播放av不卡国产日韩| 亚洲中文字幕在线第二页 | 久久综合丝袜日本网| 毛茸茸性xxxx毛茸茸毛茸茸| 国产日韩久久久久69影院| 99久久精品人妻一区| 久久久久亚洲av成人片| 免费人成无码大片在线观看| 亚洲aⅴ久久久噜噜噜噜| av人妻在线一区二区三区| 亚洲欧美日韩综合一区二区| 国产人妻精品一区二区三区不卡 | 日本丰满人妻xxxxxhd| 久久中文字幕日韩精品| 能看不卡视频网站在线| 男人的天堂中文字幕熟女人妻| 国产精品欧美成人| 青草青草伊人精品视频| 亚洲乱码中文字幕三四区| 放荡的少妇2欧美版| 男女边吃奶边做边爱视频| 免费人人av看| 91麻豆精品国产91久久麻豆| 免费成人在线电影| 精品人无码一区二区三区| 国产成人精品自拍在线观看| 好大好爽我要高潮在线观看| 亚洲av无码潮喷在线观看| 甲状腺囊实性结节三级| 亚洲一区二区蜜桃视频| 国产偷久久久精品专区| 久久天天躁狠狠躁夜夜爽蜜月| 91在线视频视频在线| 国产在线视频一区二区天美蜜桃 | 中文精品久久久久人妻不卡| 少妇激情av一区二区| 日韩精品有码在线视频|