在您的数据库项目中应用测试驱动的开发.docVIP

在您的数据库项目中应用测试驱动的开发.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在您的数据库项目中应用测试驱动的开发.doc

  在您的数据库项目中应用测试驱动的开发教育资源库   本文示例源代码或素材下载   本文讨论:   TDD 的优点   在数据库开发中应用单元测试   组合 T-SQL 与 . 兼容的语言   连接、测试条件和事务 本文使用了以下技术: Visual Studio 2008, SQL Server   目录   软件开发中的单元测试 数据库单元测试 定义连接 管理 T-SQL 脚本 修改生成的测试代码 事务 System.Transactions 数据驱动的测试 自定义测试条件 定义测试条件 修改测试执行 展望   LMicrosoft 于 2006 年 11 月发布了 Visual Studioreg; Team System Database Edition,也称为 DBPro 或 Data Dude,它向产品生命周期方法中引入了数据库开发。DBPro 还引进了数据库单元测试设计器,使用它可以轻松地生成或编写面向 T-SQL 的单元,在开发前验证数据库对象。在本文中,我将深入阐述数据库单元测试,解释运用功能的方法,展示如何对您自己的数据库项目执行单元测试。   软件开发中的单元测试   在软件开发中,单元测试在确保质量水平和满足里程碑要求方面发挥着重要的作用。尽管很多开发人员均认可单元测试的重要性,但他们大都不会在产品周期结束时花费时间编写单元测试。为解决这一问题,测试驱动开发 (TDD) 方法应运而生。开发人员可以使用这种方法在实际运用功能前编写单个功能的单元测试。这样,开发人员就可以从外到内查看 API,尽可能简化设计。   如今,众多使用 C# 和 Visual Basicreg; 的开发人员均以 TDD 为指导,通过创建单元测试在尚未编写的类上试用方法,然后利用最少量的代码编译测试。如果编译后的测试失败,开发人员只需编写通过下一轮测试所必需的代码即可。每次迭代时均运行所有单元测试来验证没有出现回归错误。应用程序和单元测试代码随后签入源代码控件。每个单元测试针对所开发的方法运行两次。   为充分发挥作用,单元测试在其运行前必须设置自身的执行环境,以便稳定地验证其专门测试的代码。实施并验证测试后,将其签入源代码控件并在产品生命周期的其余部分使用,以确保按预期继续使用方法。   由于您需要提供稳定的测试环境以便在签入更改前验证代码,TDD 也因此在数据库开发中变得更具挑战性。为了让数据库单元测试成功运行,它必须具备合适的架构和数据。这意味着为运行测试,其他开发人员在创建单元测试时必须重用您所使用的环境。如果没有大量造价高昂的基础结构,这一点很难实现。幸运的是,DBPro 能让身处这一环境的开发人员遵循相同的单元测试流程。   从源代码控件中获得最新的测试和数据库项目,然后将新存储的过程加入数据库项目中。配置过程的输入和输出参数。   右键单击新存储的项目,然后选择create unit tests(创建单元测试)。将单元测试添加到现有的测试项目中。新测试类加入带有 T-SQL 的测试项目,T-SQL 将使用默认输入参数执行新存储的过程。   修改输入参数以包含预期值,然后添加测试条件以验证存储的过程是否返回了预期的结果。   运行测试。进行测试设置时,将数据库项目部署到本地的 SQL Serverreg; 实例中,并执行数据生成计划以用预期的测试数据填充新部署的数据库。针对本地 SQL Server 实例执行测试,测试会失败(这是预期的结果,因为存储过程的逻辑尚未执行)。   执行存储过程的逻辑并再次运行测试。部署更新后的存储过程并通过测试。   运行所有测试来验证数据库,然后将存储的过程和单元测试代码签入源代码控件中。   DBPro 提供的功能包括:从现有的函数、存储的过程或触发器生成存根 T-SQL 单元测试;自动将数据库项目更新部署到沙箱实例中;使用数据生成计划在测试环境设置过程中生成数据;以及针对目标数据库执行 T-SQL 测试。尽管这些功能可一起使用,但并不要求必须这样做。例如,可以从头编写数据库单元测试,不必在每个测试运行前都生成数据。   数据库单元测试   数据库单元测试功能反映了在某种程度上相互竞争的两个目标:数据库开发人员希望使用熟悉的 T-SQL 脚本表达单元测试逻辑,并希望利用 C# 或 Visual Basic 这样面向 Microsoftreg; . Frame System 的数据库单元测试提供或支持您想要的功能。您需要使用合适的上下文执行测试。例如,您需要在连接数据库时利用 icrosoft 创建了连接上下文这一概念,其中包含定义连接及其在执行测试时使用方式涉及的所有必要信息。基本连接上下文包括创建其他 ADO. 对象时所用的开放式连接、提供程序工厂 (

您可能关注的文档

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档