除了DbUnit.NET之外,还有其他的“.NET (2.0)数据库访问代码单元测试框架”吗?
我一直在尝试DbUnit.NET,但有些东西不受支持。此外,自2006年5月22日以来,该项目似乎处于alpha阶段……
我们正在重构我们的架构,以便能够使用模拟框架进行测试,但在这项工作完成之前,我希望有一个像DbUnit.NET (但更好)的框架。
发布于 2009-08-19 18:04:47
几年前我遇到了这个问题。我对DBUnit.Net的状态感到恼火。它缺少了对我来说很重要的功能。多亏了IKVM,使用dotnet的普通Java版本的DBUnit并不是很困难。事实上,我现在正在运行使用原始DBUnit的C#集成测试。下面是我如何将DBUnit的java版本转换为.Net程序集的方法:
现在,在命令行中使用通用jar目录的工作目录:
ikvmc -target:libary -keyfile:yoursignature.snk -debug -version:2.2.0.0 -out:dbunit.dll *.jar您可以从以下位置获取所需的库:
Apache Commons
-*
如果您没有使用SQL Server作为数据库,那么用适当的JDBC驱动程序替换sqljdbc.jar。要直接从.Net代码中使用DBUnit,需要包含dbunit.dll和适当的IKVM程序集。
我在这里给出的jar版本是旧的。我关于这个主题的笔记几乎已经有三年的历史了。较新的版本可能会工作,但我还没有尝试过。
发布于 2009-08-26 17:08:35
我们正在为我们的一个项目使用NDbUnit。这是一个比DbUnit.NET看起来更活跃的项目。
发布于 2009-11-20 00:28:22
考虑tdunit
TDUnit是一个类似于DBUnit.Net的单元测试实用程序。TDUnit通过允许在测试数据XML文件中使用依赖性值,允许您在测试数据库上启用标识列和外键约束,从而帮助您进行单元测试数据库访问。
TDUnit使用一个在本质上类似于DBUnit的XML文件来指定要加载到数据库中的测试数据,但有一个主要区别。TDUnit允许创建包含标识列和表之间关系的测试数据。例如,在TDUnit中,您可以将客户行加载到customer表中,然后在Order表中引用为该客户自动生成的ID (Identity列)。尽管它是用C# 3.0编写的,但只要安装了.Net Framework3.5,就可以在.Net 2.0项目中使用它。通过在XML文件中指定测试数据,测试所需的数据可以保存在测试中,TDUnit可以插入和删除测试数据。这允许您的测试数据库保持为空,从而允许更快的更改和更容易地分发到团队。
~来自其主页上的项目描述。
https://stackoverflow.com/questions/780614
复制相似问题