2
我們計劃將我們的本地c/C++項目集成到maven構建過程中,因爲我們正在移植Android的代碼。此外,我們想要制定單元測試,這些單元測試使用標準maven語法(對於java單元測試)自動運行,也適用於當前正在使用CUnit的c/C++項目。這可能與maven集成嗎?將C/C++單元測試與maven集成
我們計劃將我們的本地c/C++項目集成到maven構建過程中,因爲我們正在移植Android的代碼。此外,我們想要制定單元測試,這些單元測試使用標準maven語法(對於java單元測試)自動運行,也適用於當前正在使用CUnit的c/C++項目。這可能與maven集成嗎?將C/C++單元測試與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>
對不起,我是很新的Android和Maven的這樣一個問題,我會使用JNI轉換我的C/C++代碼,然後在android prj將做類似於System.loadLibrary(「ABC」);在這種情況下,shell腳本將如何適應。 – user503403
顯然我錯過了與我的答覆:)使用JUnit運行你的單元測試對你的java代碼或者您首選的Java單元測試框架),並使用腳本中的CUnit針對C++代碼運行這些代碼。 – xea
我不會考慮從單元測試和vica的本質上運行Java(如JUnit或TestNG)的C++測試。 – xea