【发布时间】:2017-07-14 07:44:27
【问题描述】:
我有一个带有以下签名的方法:
ConfigTreeNode FilterFirstChild<T>(Func<ConfigTreeNode, T> getProp, T key)
用法如下:
MyObj.FilterFirstChild(x => x.Prop1, "foo") //assuiming Prop1 is a string
调用者可以使用任何属性代替Prop1(即Prop2、Prop3)。
现在我的问题是我是否应该编写涵盖所有可能属性的多个单元测试?
即
public void FilterFirstChild_GivenChildProp1_ReturnsCorrectChild()
public void FilterFirstChild_GivenChildProp2_ReturnsCorrectChild()
public void FilterFirstChild_GivenChildProp3_ReturnsCorrectChild()
或者我应该只写一个测试一般工作行为的测试
即
public void FilterFirstChild_GivenChildProp_ReturnsCorrectChild() // not prop1, prop2... etc
抱歉,如果这是一个愚蠢的问题。
【问题讨论】:
标签: c# .net unit-testing testing tdd