首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用NDBUnit框架进行单元测试

使用NDBUnit框架进行单元测试
EN

Stack Overflow用户
提问于 2009-10-05 11:47:40
回答 1查看 2.7K关注 0票数 2

我正在为一个已经成熟了很多的应用程序编写单元测试,time..We使用的是NDBUnit,因为测试用例变得独立于每个other..while,我们开始开发这个应用程序时,数据库模式是非常容易管理的,因此在VS designer上拖放表来创建可扩展标示驱动程序从来不是问题。嗯,使用我当前的DB模式,生成的XSD的大小超过3MB。在开发速度较慢的机器上,当用户试图打开XSD时,VS会进入睡眠状态。因此,保持DB模式和XSD同步变得非常具有挑战性。有没有办法摆脱手动修改XSD的步骤?您是否建议我应该考虑其他单元测试框架?Spring.Net肯定会提供我需要的东西,但我们没有接口,因此集成它将是一项乏味的任务。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-10-06 02:48:56

如果您手动使用Visual Studio设计器在生产环境中创建XSD文件,那么您可能做错了:)正如您所发现的,Visual Studio XSD设计器可能是维护XSD文件的最难管理的方法。

我建议按照我所做的那样,切换到MyGeneration代码生成工具从数据库创建您的XSD文件。

信息:http://www.mygenerationsoftware.com

下载:http://sourceforge.net/projects/mygeneration/

XSD模板:http://www.mygenerationsoftware.com/TemplateLibrary/Archive/?guid=59a03408-c96f-4baf-8171-b6bfe8725dab

此外,您应该注意到,虽然我在这些截屏视频中演示了NDbUnit工具的使用,但NDbUnit工具的实际使用模式是根据需要使用多个XSD文件,以支持不同的依赖于数据库的测试。

由于XSD文件的内容控制NDbUNit将在任何时候操作的数据库的“作用域”,因此该工具的目的是为不同的依赖于数据的测试提供许多不同的XSD文件,并且您将仔细地将测试、XSD和测试数据(XML)一起限定范围,以便它们对于不同的测试集合彼此紧密相关。

在单个XSD文件中表示整个数据库(特别是当该XSD文件接近3MB时!)几乎可以肯定是一种反模式,应该引起您考虑您可能没有以足够细粒度的方式考虑您的测试或测试数据-足够有效。

如果您不能在不违反引用完整性规则的情况下有效地将数据加载到数据库表的一部分中,那么您可能需要解决数据库设计问题。就像一个单一的上帝对象是OO设计中的反模式一样,一个单一的整体数据库也是一个反模式,它在如此多的地方具有引用完整性约束,以至于只有用数据加载每个表才能插入记录(迫使您一次测试整个东西,就像您在这里可能正在做的那样)。

最后,为了清晰起见,NDbUnit项目现在和过去都是开源的,完全独立于Microdesk。当我在Microdesk工作时,公司确实使用了这个工具,我也确实在业余时间为这个项目做出了贡献,但Microdesk只是一家采用该工具的公司,所以将NDbUnit称为“Microdesk的NDbUnit框架”是完全错误的。

希望这对你有帮助~!

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1519612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档