在单元测试和测试驱动开发中,为什么将测试代码构建为库而不是作为测试c ++程序的可执行文件更好?我听说过两者的争论。
答案 0 :(得分:0)
您可以为测试代码构建单独的可执行文件,并将其作为主应用程序的构建后事件运行。这样,如果测试失败,则构建失败。大多数C ++ IDE(例如Visual Studio,Eclipse,QtCreator)都支持这一点。
答案 1 :(得分:0)
库与可执行文件的参数取决于您希望开发人员如何使用测试。
如果要将测试集成到构建过程中,您可能需要命令行可执行文件。如果您希望从某种独立的GUI应用程序中运行测试,您可能需要基于窗口的可执行文件。如果您希望测试由度量收集服务器运行,则可能需要将它们托管在服务中。
如果您需要多个这些方法,可以选择将测试编译到库中,然后将它们链接到每个可执行框架中。但是,如果您只需要命令行执行,那么就不需要GUI或服务选项,也无法构建单独的静态库。
两种方法都不“更好”。根据团队的特定情况和团队标准选择您需要的方法。它现在也可能不那么重要了。如果您只从一个可执行的测试工具开始,您可以随时将测试拆分为静态库。
现在开始编写和运行自动化测试远比暂停和狡辩测试实现细节更为重要。