使用 JUnit 和 SuiteRunner 测试私有方法我第一次使用 JUnit 是为了为 ServiceUI API 构建一个一致性测试工具包 [ 1 ]。一致性测试工具包的目的是帮助确保同一 API 的替代实现与 API 的规范兼容。由于 API 规范仅定义 API 的公共接口,而不是 API 的实现,因此一致性测试仅测试公共接口。换句话说,一致性测试是一种“黑盒”测试。它将测试中的 API 视为黑盒,可以看到其外部接口,但看不到其内部实现。因此,Java API 的一致性测试只需要访问测试中的包和类的公共成员。无需访问包级、受保护或私有成员。