.NET中的损坏DataSet用于故障测试

时间:2010-03-23 16:07:20

标签: c# .net unit-testing dataset

是否有人知道如何创建DataSet,以便在GetXml()上调用DataSet时我会收到例外情况?我正在尝试为这种情况编写一些失败测试,​​并且我很难过。有可能吗?

5 个答案:

答案 0 :(得分:3)

你能写一个DataSet的子类,以便它的getXml()可以预测会抛出异常吗?

答案 1 :(得分:1)

这似乎是在ToString()次调用上测试异常。有些事情不需要进行故障测试。

你会在创建/添加DataSet时遇到异常,所以一旦你的内存中有一个DataSet尚未抛出异常,它将永远有一个允许GetXml()无法正常工作的结构。

更新:看起来如果你有两个表之间有一对多的关系就可以让它抛出异常,设置适配器从子表中选择多行,其中包含父表信息他们,然后拨打GetXml()

答案 2 :(得分:1)

根据文档,DataSet.GetXML方法不会抛出异常。

它可能返回一个空字符串或null(尽管文档没有这样说)但它不会抛出异常

您可以通过首先检查生成的DataSet是否包含任何错误(DataSet.HasErrors),甚至可以检查每个表(DataTable.HasErrors)和每一行( DataRow.HasErrors)?

答案 3 :(得分:1)

您可以将null DataSet对象传递给那些调用GetXML的函数吗? : - )

答案 4 :(得分:0)

您可以简单地抛出损坏的数据集将引发模拟问题的异常