c - C/C++ 单元测试与 Maven 的集成

标签 c maven

我们计划在为 Android 移植代码时将我们的原生 c/c++ 项目集成到 Maven 构建过程中。此外,我们还想为当前使用 CUnit 的 c/c++ 项目制定使用标准 maven 语法(对于 java 单元测试)自动运行的单元测试。是否可以将它与 maven 集成?

最佳答案

我不确定是否有直接的方法来执行此操作,但我会执行以下操作:

  1. 创建负责执行单元测试的可配置 shell/批处理脚本。
  2. 通过 exec plugin 将脚本绑定(bind)到测试阶段,将此脚本的执行集成到 Maven 中.

此设置会在每次 surefire plugin 时运行您的 C++ 单元测试。开始了,例如。通过运行:mvn test

或者,您可以对 ANT 执行相同的操作脚本和 antrun plugin .

这是一个示例(Exec 插件使用页面的修改版本):

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2.1</version>
        <executions>
          <execution>
            <phase>test</phase>
            <goals>
              <goal>exec</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <executable>run-cpp-tests.sh</executable>
        </configuration>
      </plugin>
    </plugins>
  </build>
   ...
</project>

关于c - C/C++ 单元测试与 Maven 的集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19354321/

相关文章:

java - Eclipse 中的 Maven 在 POM 更改时提示 "Unable to locate the Javac Compiler"

android - 无法从 bintray 存储库编译库,看起来它阻止了我的国家 IP

c++ - 从午夜开始计算毫秒数

c - 打印矩阵值

c - 如何编译同时适用于 libcrypto.so.0.9.8 和 libcryto.so.1.0.0 的二进制文件?

java - exec-maven-plugin exec :java failing: Cannot assign configuration values to array of type java. lang.String

maven - 映射结构 : generated sources in intelliJ using annotationProcessorPaths

c - 为什么 gcc99 指向无意义的错误而标准 gcc 没有?

c - 从 C 中的字符串中删除数字和除撇号之外的所有标点符号

java - 使用 @ImportResource 导入 XML 配置不起作用