在单元测试中如何传递哈希表的输入
public DataSet ExampleMethod(int param1, string param2, Hashtable ht)
{
if(ht==null)
{
ht = new Hashtable();
}
ht.Add("testKey","testData");
DataSet ds = new DataSet();
ds.Tables.Add();
ds.Tables[0].Columns.Add("Column1");
ds.Tables[0].Columns.Add("Column2");
ds.Tables[0].Columns.Add("Column3");
return ds ;
}
这只是一个示例方法,因为我有一个字符串、一个整数和一个哈希表类型作为输入,我可以为整数和字符串传递随机值,但我将为哈希表类型传递什么类型的值以便进行单元测试这个方法。 我还想要此方法的示例 Nunit Fixture 代码,以便我可以在 Nunit 框架中测试它。因为我的方法返回一个数据集,所以我如何为其编写文本固定装置,因为我使用 AREequals。(5,add(2,3 )) 如果它返回一个 int 。那么当一个方法返回一个 Dataset 时该怎么做
public DataSet ExampleMethod(int param1, string param2, Hashtable ht)
{
if(ht==null)
{
ht = new Hashtable();
}
ht.Add("testKey","testData");
DataSet ds = new DataSet();
ds.Tables.Add();
ds.Tables[0].Columns.Add("Column1");
ds.Tables[0].Columns.Add("Column2");
ds.Tables[0].Columns.Add("Column3");
return ds ;
}
this is just a example method now since i have a string ,a int and a hash table type as a input ,i can pass random values for int and string but what type of value will i pass for hash table type in order to unit test this method . and i also want a sample Nunit Fixture code for this method so that i can test it in Nunit framework .since my method returns a dataset how do i write a text fixture for it because i use AREequals.(5,add(2,3)) if it returns a int .so what to do for a method when it returns a Dataset
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用虚拟数据在 TestMethod 或 TestFixture 中创建哈希表并传递该对象。 我对你的理解正确吗?
在 [SetUp] 方法中,您使用虚拟数据填充哈希表。
我可以看到你真正的问题是关于返回的数据集的断言。
您仍然可以使用 Assert.AreEqual,但要测试 DataSet 是否包含您期望给定 HashTable 的单元格数据。
您可以为此使用循环。
您的测试方法可能如下所示。
希望能回答你的问题。
You can create a HashTable in the TestMethod or the TestFixture with dummy data and pass that object. Am I understanding you right?
In the [SetUp] method you populate your HashTable with dummy data.
I can see you real question is about the Assert of the returned DataSet.
You can still use Assert.AreEqual, but instead test that the DataSet contain the cell data you'd expect given the HashTable.
You could use a loop for this.
Your TestMethod could look like this.
Hope that answered you question.
传递 null 或使用静态数据创建新的哈希表并将其传递给此函数。 为了检查数据集,您可以断言返回的数据集计数、是否为空以及如果需要的话也可以断言值。
Pass on null or create new hashtable with static data and pass it to this function. For checking dataset you can assert on returned dataset count, is null or not and also values if you want.