我们已经进行了Visual Studio配置,所以就进行了相关的进行数据分析。右键单击数据库项目并选择Add -> Table,使用如下的定义创建一个OrderDiscounts表:下面看看图解。。。
现在,选择Test菜单中的Run(在2005中选择run without the debugger)运行我们的单元测试。您会发现运行测试需要一段时间,这是因为它正在比较我们的数据库项目和目标数据库,来确定是否需要进行部署或者进行其他一些需要在第一次运行时处理的Visual Studio配置。您应该看到测试失败的提示,Visual Studio配置因为数据库中缺少sp_calculate_discount_for_order存储过程,那么让我们来解决这个问题。右键单击数据库项目并选择Add -> Stored Procedure:
将其命名为sp_calculate_discount_for_order并点击OK按钮。请注意这是个存储过程的SQL语句定义,将其修改为:
- CREATE PROCEDURE [dbo].[sp_calculate_discount_for_order]
- @orderAmount money
- AS
- SELECT 0.00RETURN 0;
在窗口外我们能够得到分析ResultSet的支持。现在我们的存储过程及将会返回我们期望的折扣数值。每次您改变存储过程之后,都需要保存文件。这时候我们数据库项目中已有了存储过程定义,但是数据库中还没有。您打开目标数据库就会发现现在还没有任何存储过程。Visual Studio配置我们再回到测试中:
Visual Studio配置测试通过了!您可能运行测试前又出现了一次停顿,这是因为数据库项目中的改变正部署到测试用的目标数据库,让我们添加另外一个测试来检验折扣为0的另一个边界条件。在您的测试屏幕中,点击绿色的加号并且将新测试命名为NinetyNineNinetyNineOrderShouldHaveZeroDiscount。修改脚本,使它调用我们的存储过程,并且修改Test Condition以验证存储过程返回的折扣数值为0: