所以我正在寻找关于如何测试我写的课程的一些建议.
它故意包含一个公共方法Run(),它接受变量和一组长时间运行的过程.此方法包含对私有方法的多次调用,这些方法执行特定任务但不应公开访问.
我的查询是,在这种情况下,单元测试所有私有方法似乎是合乎逻辑的.然而,很多人认为测试私有方法是一种不好的做法.
所以我的问题是,我应该继续测试私有方法,还是有任何人处于类似情况并且可以提出另一种方法?绝对没有办法通过一个公共方法可靠地测试我的所有私有方法.
如果我的问题不是最清楚的话,任何帮助表示赞赏和道歉.该应用程序是用C#编写的,如果有任何帮助的话.
谢谢
就个人而言,我对这种事情采取务实的观点 - 可以进行单元测试"白盒子"测试(即你可以考虑实现细节并测试它们),但是不要走那条路那么远他们最终变得非常脆弱.
我将私有方法设为内部并通过测试它们InternalsVisibleTo.也可以通过这种Run方法运行一些"黑匣子"测试...听起来这些实际上是集成测试而不是单元测试.
另一件需要考虑的事情是这真的应该是一个类.这些任务是可分的吗?他们是否会像个别班级本身一样有意义,现在的班级只是协调他们?
| 归档时间: |
|
| 查看次数: |
950 次 |
| 最近记录: |