构建是否包括运行单元测试

Does build include running Unit Tests?

本文关键字:单元测试 运行 包括 是否 构建      更新时间:2023-10-16

我在Java上工作。我使用 Ant/Maven 来简化构建过程。

我曾经在JUnit框架中编写单元测试。当我说build所有单元测试区域 lso 曾经运行时。

因此,这意味着,Build 包括编译源代码并针对该编译的源代码运行单元测试。

现在,我开始与C++一起在Visual C++的新项目上工作。在这里,当我说build时,只有源代码被编译并与库链接。但是单元测试没有运行。所以,现在我对构建过程的实际定义感到困惑。

构建过程是否还包括运行测试?或者它只是编译和链接源代码?

Ant和Maven"知道"单元测试。如果可执行文件标记为测试,它将在生成过程中运行。

Visual Studio,AFAIK,没有这个概念。即使可执行文件是使用某些*Unit框架编写的,Visual Studio也会构建它,但不会运行它(默认情况下(。可以在生成过程中运行测试,但需要向测试程序的项目添加生成后步骤以运行可执行文件。

免责声明:我使用的最后一个版本是VS 2003.NET;从那时起,情况可能会有所改善(或变得更糟(。

如今,我以最大的灵活性使用构建工具:make .在我目前正在从事的项目中,有一个名为"all"的构建目标,用于构建每个可执行文件和测试程序,一个名为"check"的目标,用于运行每个测试程序(并在需要时构建它们(,一个名为"coverage"的目标用于计算代码覆盖率,以及一个名为"run"的目标,用于执行上述所有操作。这样我就可以选择要运行的内容。

我希望你能从中看到,"构建过程包括什么"取决于构建系统的设置方式。没有一个普遍定义的"构建过程"概念。