我应该测试辅助函数还是只测试主要函数?

Should I test helper functions or only the main function?

我正在 python 中编写一个小型命令行工具,它有两个子命令(如:git initgit clone)。这些子命令使用一些辅助函数,这些函数不会在命令行中公开。使用 py.test 编写测试时,单独测试每个辅助函数或只测试子命令的两个函数是否有意义(它们多次调用所有辅助函数)。

测试辅助函数很有意义 - 在这种情况下,这些辅助函数是您应用程序的基本构建块(读作:单元)。拥有证明它们正常运行的测试将使您能够轻松地更改它们的实现,而不必担心您是否破坏了其他东西。另一个方向也是如此——假设你确实破坏了一个辅助函数。您需要一个简单的测试来向您展示您所犯的错误,而不必深入研究 "public" 函数的复杂实现来理解为什么他们的测试已被破坏。