我正在建立一个具有多个扩展的新项目。我的目标是跟踪所有扩展的代码覆盖率。扩展位于目录扩展的子目录中,并有多个源文件夹。我的项目中的扩展数量不是最终的。所以我肯定会添加一个或多个。考虑这样的结构:
所有扩展都遵循相同的结构。我正在使用coverage-jdk11 作业,如下所述: https://docs.gitlab.com/ee/user/project/merge_requests/test_coverage_visualization.html#java-and-kotlin-examples
现在代替
python /opt/cover2cover.py target/site/jacoco/jacoco.xml
src/main/java
> target/site/cobertura.xml
我需要添加多个 src 目录,这是受支持的。所以我目前的版本是这样的:
python /opt/cover2cover.py jacoco.xml
extensions/extensionA/src
extensions/extensionA/testsrc
extensions/extensionA/web/src
extensions/extensionA/web/testsrc
> cobertura.xml
但是这个显然只支持extensionA。我的想法是遍历扩展目录的子目录并为每个子目录创建多个参数。但我不知道如何在 shell 中执行此操作。
答案 0 :(得分:0)
最后我使用以下命令让它工作:
find extensions -type d -maxdepth 3 -regex "^extensions/.*/\(testsrc\|src\)$" | xargs -t python /opt/cover2cover.py hybris/log/junit/jacoco.xml > hybris/log/junit/cobertura.xml