我是 TDD 概念的新手,刚刚开始掌握为我的应用程序的公共(public)接口(interface)编写好的单元测试的窍门。
目前,我正在开发一个类库,其中公共(public)接口(interface)相对较小,但在幕后的类中存在大量复杂性。此功能在内部范围的类和方法中实现,因此不可用于单元测试。我不想公开这些类和方法,因为它们不应该对消费应用程序可用,但我觉得如果不编写更具体的测试用例,我无法充分测试应用程序的所有功能。
有人可以向我解释如何完成此类测试吗?或者我的方法有什么问题,我可以更改以促进更好的测试。
顺便说一句,我在 C# .NET 环境中工作,但我认为我的问题也适用于 Java 或任何其他平台。
最佳答案
由于您使用的是 dotnet,因此您可以将其他类设为 dll-internal 并使用 internalsvisibleto业务类中的属性以允许 unittest-dll 访问它们。
关于.net - 非公开方法的单元测试和测试驱动开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11674922/