【发布时间】:2016-05-12 14:28:52
【问题描述】:
我目前正在一个项目中使用 R6 类。
我想编写单元测试来测试我正在使用的私有方法的功能(最好不要通过使用这些私有方法的更复杂的公共方法)。
但是,我似乎无法访问私有方法。
我怎样才能最好地做到这一点?
谢谢!
【问题讨论】:
-
您是否应该测试您的私有方法,因为它们通常会从客户端代码中调用——间接(例如,从您的类的公共方法中),并且不直接?将方法和数据成员设为私有的全部意义在于,它们不能从对象实例外部访问。
-
谢谢@nrussell。对我来说,编写单元测试的目的是确保所有功能都按预期工作。为此,最好在尽可能低的级别编写单元测试。为执行更复杂操作的公共方法编写单元测试(例如,在各种设置中调用私有方法数百次)会使运行测试和调试失败变得更加复杂。