C# 通过单元测试识别未使用的函数

C# 通过单元测试识别未使用的函数,c#,asp.net,.net,unit-testing,nunit,C#,Asp.net,.net,Unit Testing,Nunit,我已经编写了一个helper类,其中包含许多公共函数 我通过同一项目中的不同文件调用的函数很少 由于我认为我将来会使用它,所以我没有调用几个函数 很少有函数I可能被错误地编写,将来可能不会有用,或者完全是浪费 问题: 是否可以编写测试用例来检查哪些函数被调用,哪些函数未被调用 如果没有使用helper函数,我们是否可以编写测试用例使测试失败 将未使用的函数保留在help类中是最佳做法吗 更新: 如果我在类中保留未使用的函数以供将来参考和编写 单元测试为此,测试覆盖率包括这些函数并给出 错误的测试

我已经编写了一个helper类,其中包含许多公共函数

我通过同一项目中的不同文件调用的函数很少

由于我认为我将来会使用它,所以我没有调用几个函数

很少有函数I可能被错误地编写,将来可能不会有用,或者完全是浪费

问题:

是否可以编写测试用例来检查哪些函数被调用,哪些函数未被调用

如果没有使用helper函数,我们是否可以编写测试用例使测试失败

将未使用的函数保留在help类中是最佳做法吗

更新:

如果我在类中保留未使用的函数以供将来参考和编写 单元测试为此,测试覆盖率包括这些函数并给出 错误的测试覆盖率,那么为这些测试编写测试用例是正确的吗 函数还是删除那些未使用的函数更好


简言之,可能不是因为它依赖于您拥有系统其余部分的100%覆盖率,并使用某种代码覆盖工具。类似代码检查的功能会告诉您哪些方法它认为没有被使用。

关于最佳实践,请记住。同时也要读一些基本的知识。此外,您可以使用检查在测试过程中调用了哪些函数。通常,您会/可以使用testcoverage工具来执行此操作。@testcoverage工具不会只发现测试了哪些函数吗?Visual studio在方法上面有这些小信息行。它们就像“0引用| 0更改| 0作者,0更改”——“0引用”是一个相当好的提示,提示它们没有被称为初学者。@Fildor这两个功能都可以。它将显示哪些行/方法/类被测试,哪些未被测试。看看ncover:或者VS2015 SKU:中提供的什么,或者有via Jenkins插件选项来涵盖c#嗨,大家好,请对我问题的更新部分发表意见好吗?大多数情况下最好删除未使用的功能,请参见YAGNI原则@SmartestVEGA