使用标准的Ruby Test::Unit
框架,在Ruby中对受保护的和私有的方法进行单元测试的最佳方式是什么?
我相信有人会大声疾呼,教条式地断言“你应该只对公共方法进行单元测试;如果它需要单元测试,它就不应该是一个受保护的或私有的方法”,但我对此并不感兴趣。我有几个是保护的或私有的方法,这些私有/受保护的方法是中等复杂的,类中的公共方法依赖于这些受保护/私有方法的正常工作,因此我需要一种方法来测试受保护/私有方法。
还有一件事。我通常将给定类的所有方法放在一个文件中,而将该类的单元测试放在另一个文件中。理想情况下,我希望所有的魔法都能在单元测试文件中实现这个“受保护的和私有方法的单元测试”功能,而不是主源文件,以使主源文件尽可能简单明了。
https://stackoverflow.com/questions/267237
复制相似问题