偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Visual Studio 2008單元測試之數(shù)據(jù)庫測試

開發(fā) 后端
我們要討論的是在Visual Studio 2008單元測試中的數(shù)據(jù)庫測試,這一點是可以實現(xiàn)的,請看下面的實例。

我們開發(fā)一個系統(tǒng)必須與數(shù)據(jù)庫打交道,需要寫N個SQL、存儲過程、自定義函數(shù)、視圖等,那么能否使用Visual Studio 2008進行數(shù)據(jù)庫測試嗎?當然是可以的,下面我就以一個簡單的為例子,介紹如何利用Visual Studio 2008進行數(shù)據(jù)庫單元測試。

***步,在Visual Studio 2008里面增加數(shù)據(jù)庫測試,如下圖所示:

 

 

這樣我們就添加好一個數(shù)據(jù)庫單元測試,下面就是如何設(shè)置此單元測試是針對哪個數(shù)據(jù)庫的。

第二步:指定當前測試項目的數(shù)據(jù)庫配置

當我們新增加一個數(shù)據(jù)庫單元測試,Visual Studio 2008會自動彈出配置界面,供我們設(shè)置數(shù)據(jù)庫連接屬性,如下圖:

我們可以選擇一個建立好的數(shù)據(jù)庫連接:

當然也可以新增一個連接,新增數(shù)據(jù)庫連接比較簡單,就是設(shè)置服務(wù)器地址、用戶名、密碼、數(shù)據(jù)庫名稱等,在此就不介紹了。Visual Studio 2008不僅支持我們連接一個已經(jīng)存在的數(shù)據(jù)庫,還可以運行單元測試前,自動部署一個數(shù)據(jù)庫供測試,連接好數(shù)據(jù)庫后,下面將介紹如何進行單元測試。

第三步:測試用例

在Visual Studio 2008數(shù)據(jù)庫單元測試的“設(shè)計”界面,首先會有二個下拉框,如下圖所示

左側(cè)的下拉框即是數(shù)據(jù)庫單元測試的每個“測試方法”,你可以把他當成代碼單元測試的函數(shù),系統(tǒng)默認會有二個:公共腳本和DatabaseTest1,如下圖:

公用腳本:在執(zhí)行此單元測試前運行的SQL腳本,包括“測試初始化”和“測試清理”,即對應(yīng)的準備數(shù)據(jù)的腳本、測試完成后刪除數(shù)據(jù)的腳本,可以保證每次執(zhí)行單元測試時,數(shù)據(jù)都是一致的。

測試方法:可以新增、刪除、重命名,可以通過增加測試方法來實現(xiàn)不同用例的驗證。

第四步:編寫測試腳本

針對每個測試方法可以編寫測試SQL腳本,即SQL語句,只要能夠在測試數(shù)據(jù)庫中正確執(zhí)行的SQL語句都可以,然后針對你編寫的SQL語句執(zhí)行的結(jié)果進行驗證,如下圖

此段SQL語句是讀取成本系統(tǒng)的業(yè)務(wù)參數(shù),我們可以針對此SQL進行驗證其正確性,Visual Studio 2008支持六種測試條件:

標量值:可以判斷第幾個結(jié)果集的第幾行的第幾列的值是多少,不相等則驗證失敗。

非空結(jié)果集:判斷第幾個結(jié)果集必須有記錄,否則驗證失敗。

空結(jié)果集:判斷第幾個結(jié)果集必須沒有記錄,否則驗證失敗。

沒有結(jié)論:無結(jié)論就是測試沒有結(jié)果,注意當你新增加一個測試方法時,Visual會自動生成一個沒有結(jié)論的測試條件,如果你不需要,則手動刪除掉。

行數(shù):判斷第幾個結(jié)果集返回的行數(shù),否則驗證失敗。

執(zhí)行時間:判斷執(zhí)行時間必須少于多少,否則驗證失敗,用于性能測試。

那么針對上面的SQL語句,我們可以驗證返回的行數(shù),可以通過行數(shù)的多少,驗證成本系統(tǒng)的業(yè)務(wù)參數(shù)數(shù)量是否正確,如下圖

當返回的行數(shù)等于30時,代表數(shù)據(jù)庫中的數(shù)量是正確的。當然你也可以增加其它測試條件,如使用標量值驗證參數(shù)的名稱是否正確等。

第五步:運行測試

點擊“運行測試”按鈕即可得到測試結(jié)果,如下圖所示:

測試沒有通過,可以查看錯誤信息:RowCountCondition 條件(rowCountCondition1)失敗: 結(jié)果集 1: 32 行與預(yù)期的 30 行不匹配。

分析原因,數(shù)據(jù)庫執(zhí)行的結(jié)果有32行,與測試條件不匹配,修改測試條件,重新運行測試,測試通過,如下圖

Visual Studio 2008單元測試通過編寫SQL腳本,然后設(shè)置不同的測試條件,通過驗證測試條件是否匹配還進行測試,因此你可以寫任何SQL語句進行驗證,這樣就可以驗證表記錄、視圖、存儲過程、函數(shù)等,基本包括了所有的數(shù)據(jù)庫對象。

我們可以通過數(shù)據(jù)庫單元測試來保證我們每次修改數(shù)據(jù)庫對象的正確性,也可以保證我們的SQL語句是否提交,只要切換一下測試數(shù)據(jù)庫即可,可以防止開發(fā)人員提交版本時漏掉提交SQL被測試打回的場景了。

本篇簡單介紹了Visual Studio 2008單元測試的數(shù)據(jù)庫測試功能

原文鏈接:http://www.cnblogs.com/MyHom/archive/2011/01/24/1943004.html

責任編輯:彭凡 來源: 博客園
相關(guān)推薦

2017-04-07 13:45:02

PHP單元測試數(shù)據(jù)庫測試

2012-06-18 10:03:46

Visual Stud

2010-03-02 09:10:41

Visual Stud

2017-01-14 23:42:49

單元測試框架軟件測試

2021-08-04 10:51:04

數(shù)據(jù)庫單元測試SQL

2020-08-18 08:10:02

單元測試Java

2021-03-11 12:33:50

JavaPowerMock技巧

2017-01-16 12:12:29

單元測試JUnit

2017-01-14 23:26:17

單元測試JUnit測試

2011-05-16 16:52:09

單元測試徹底測試

2023-07-28 10:27:48

Java單元測試

2023-07-26 08:58:45

Golang單元測試

2016-09-14 21:55:33

前端測試Karma

2011-07-04 18:16:42

單元測試

2020-05-07 17:30:49

開發(fā)iOS技術(shù)

2021-05-05 11:38:40

TestNGPowerMock單元測試

2017-03-23 16:02:10

Mock技術(shù)單元測試

2011-12-01 09:20:41

軟件工程

2022-04-27 08:17:07

OCMock單元測試集成

2024-10-16 16:09:32

點贊
收藏

51CTO技術(shù)棧公眾號