Visual Studio 单元测试之五数据库测试

 数据库的单元测试主要是测试数据库中的数据是否符合特定的条件,Visual Studio 2010支持下面几种数据的单元测试类型(Visual Studio 2008 不支持数据库测试):

类型

说明

Data Checksum

对数据进行Checksum检验

Empty ResultSet

测试执行的SQL语句返回结果集是否为空

Execution Time

测试执行时间

Expected Schema

测试结果集中的列和数据类型是否与指定的测试条件匹配

Inconclusive

默认缺省选项。单元测试里面的Inconclusive作用相同

Not Empty ResultSet

与Empty ResultSet相反,测试结果集是否不为空

Row Count

测试结果集是否包含指定的数据行数

Scalar Value

测试返回的标量值是否与指定值相同。

更多官方解释及说明请参看:http://msdn.microsoft.com/en-us/library/aa833423.aspx

本文的例子可以使用下面的链接下载:
http://download.csdn.net/source/3014236

下面就开始Step By Step的建一个数据库单元测试实例。

1.新创建一个数据库测试文件:

2.如果你是每一次创建数据库测试文件,那么系统会自动提示你连接一个数据库:

3.创建成功后,如下图。点击去创建脚本文件。

4.如下图所示。UserGroup是我数据库中的一张表且里面只有一条数据。把系统默认的Inconclusive去掉,加上Execution Time和Row Count两个测试条件。注意看Value里面的解释。测试执行时间不能超过30秒,测试返回结果集只能返回0行。因为我们的测试结果集有一行数据,所以要修改rowCountCondition1的条件。

5. 在rowCountCondition1的属性框里面把0修改成1.如下:

6.在Test List Editor里面刷新一下,就可以看到我们刚建的数据库测试了,执行。

7.执行结果如下:

至此,数据库的单元测试界面操作基本完成。下面我们看一下后台代码。

通过代码我们可以了解到测试实际分为三个步骤:预测试(PretestAction),测试(TestAction),测试完成(PosttestAction)三部分。自动产生的代码,把预测试和测试完成的部分都省略了(

this.DatabaseTest1Data.PosttestAction = null;this.DatabaseTest1Data.PretestAction = null;)  实际操作中,我们可以根据自己的需要,进行修改。

如需转载,请注明本文原创自灰太狼的博客:http://blog.csdn.net/tjvictor

原文地址:https://www.cnblogs.com/songtzu/p/2733468.html