0

コード カバレッジ レポートを生成するために、Maven で cobertura を使用しています。テスト ケースで十分なコードがカバーされていない場合、ビルドを失敗できるようにしたいと考えています。"check"の maven-cobertura-plugin の Web ページに基づいて、pom ファイルを次のように構成しました。

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <check>
                    <branchRate>85</branchRate>
                    <lineRate>85</lineRate>
                    <haltOnFailure>true</haltOnFailure>
                    <totalBranchRate>85</totalBranchRate>
                    <totalLineRate>85</totalLineRate>
                    <packageLineRate>85</packageLineRate>
                    <packageBranchRate>85</packageBranchRate>
                </check>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>clean</goal>
                        <goal>check</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
<reporting>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.6</version>
        </plugin>
    </plugins>
</reporting>

Maven を実行すると、次のエラーが発生します。

目標 org.codehaus.mojo:cobertura-maven-plugin:2.6:check のパラメーター 'check' が見つからないか無効です

デバッグ モードで実行してみましたが、出力に次のように表示されcheckます。

[INFO] --- cobertura-maven-plugin:2.6:check (default-cli) @ MyApplication ---
[DEBUG] mojo の構成 org.codehaus.mojo:cobertura-maven-plugin:2.6:プラグイン レルム ClassRealm からのチェック[プラグイン>org.codehaus.mojo:cobertura-maven-plugin:2.6、親: sun.misc.Launcher$AppClassLoader @ 9b​​6d0342]
[デバッグ] mojo 'org.codehaus.mojo:cobertura-maven-plugin:2.6:check' を基本構成ツールで構成 -->
[デバッグ] (f) dataFile = G:\dev\MyApplication\target\cobertura\cobertura.ser
[デバッグ] (f) forceMojoExecution = false
[デバッグ] (f) maxmem = 64m
[デバッグ] (f) mojoExecution = org.codehaus.mojo:cobertura-maven-plugin:2.6:check {execution: default-cli}
[デバッグ] (f) pluginClasspathList = [org.codehaus.mojo:cobertura-maven-plugin:maven-plugin:2.6:, net.sourceforge.cobertura:cobertura:jar:2.0.3:compile, org.ow2.asm: asm:jar:4.1:コンパイル、org.ow2.asm:asm-tree:jar:4.1:コンパイル、org.ow2.asm:asm-commons:jar:4.1:コンパイル、org.ow2.asm:asm-util: jar:4.1:コンパイル、org.ow2.asm:asm-analysis:jar:4.1:コンパイル、oro:oro:jar:2.0.8:コンパイル、jaxen:jaxen:jar:1.1-beta-8:コンパイル、dom4j: dom4j:jar:1.6.1:コンパイル、jdom:jdom:jar:1.0:コンパイル、xerces:xmlParserAPIs:jar:2.6.2:コンパイル、xerces:xercesImpl:jar:2.6.2:コンパイル、xom:xom:jar: 1.0b3:コンパイル、com.ibm.icu:icu4j:jar:2.6.1:コンパイル、xalan:xalan:jar:2.6.0:コンパイル、org.ccil.cowan.tagsoup:tagsoup:jar:0.9.7:コンパイル、org.apache.ant:ant:jar:1.8.3:コンパイル、org.apache.ant:ant-launcher:jar:1.8.3:コンパイル、org.mortbay.jetty:servlet-api-2.5:jar:6.1 .14:コンパイル、org.mortbay.jetty:jetty:jar:6.1。14:コンパイル、org.mortbay.jetty:jetty-util:jar:6.1.14:コンパイル、com.sun:tools:jar:0:システム、log4j:log4j:jar:1.2.9:コンパイル、net.sourceforge. cobertura:cobertura-runtime:pom:2.0.3:compile、urbanophile:java-getopt:jar:1.0.9:compile、commons-cli:commons-cli:jar:1.0:compile、org.codehaus.plexus:plexus-対話型 API:jar:1.0-alpha-4:コンパイル、org.apache.maven.reporting:maven-reporting-api:jar:2.0.8:コンパイル、org.apache.maven.doxia:doxia-sink-api: jar:1.0-alpha-9:compile、org.apache.maven.reporting:maven-reporting-impl:jar:2.0.4.2:compile、commons-validator:commons-validator:jar:1.2.0:compile、commons- beanutils:commons-beanutils:jar:1.7.0:コンパイル、commons-digester:commons-digester:jar:1.6:コンパイル、commons-logging:commons-logging:jar:1.0.4:コンパイル、xml-apis:xml- apis:jar:1.0.b2:コンパイル、org.apache.maven.doxia:doxia-core:jar:1.0:コンパイル、org.apache.maven.doxia:doxia-site-renderer:jar:1.0:compile、org.codehaus.plexus:plexus-i18n:jar:1.0-beta-7:compile、org.codehaus.plexus:plexus-velocity:jar:1.1.7:compile、 org.apache.velocity:velocity:jar:1.5:compile、org.apache.maven.doxia:doxia-decoration-model:jar:1.0:compile、commons-collections:commons-collections:jar:3.2:compile、org. apache.maven.doxia:doxia-module-apt:jar:1.0:compile, org.apache.maven.doxia:doxia-module-fml:jar:1.0:compile, org.apache.maven.doxia:doxia-module- xdoc:jar:1.0:compile、org.apache.maven.doxia:doxia-module-xhtml:jar:1.0:compile、commons-lang:commons-lang:jar:2.4:compile、org.codehaus.plexus:plexus- utils:jar:2.0.2:compile、org.apache.maven.shared:maven-invoker:jar:2.0.11:compile]速度:速度:jar:1.5:コンパイル、org.apache.maven.doxia:doxia-decoration-model:jar:1.0:コンパイル、commons-collections:commons-collections:jar:3.2:compile、org.apache.maven. doxia:doxia-module-apt:jar:1.0:コンパイル、org.apache.maven.doxia:doxia-module-fml:jar:1.0:コンパイル、org.apache.maven.doxia:doxia-module-xdoc:jar: 1.0:コンパイル、org.apache.maven.doxia:doxia-module-xhtml:jar:1.0:コンパイル、commons-lang:commons-lang:jar:2.4:コンパイル、org.codehaus.plexus:plexus-utils:jar: 2.0.2:コンパイル、org.apache.maven.shared:maven-invoker:jar:2.0.11:コンパイル]速度:速度:jar:1.5:コンパイル、org.apache.maven.doxia:doxia-decoration-model:jar:1.0:コンパイル、commons-collections:commons-collections:jar:3.2:compile、org.apache.maven. doxia:doxia-module-apt:jar:1.0:コンパイル、org.apache.maven.doxia:doxia-module-fml:jar:1.0:コンパイル、org.apache.maven.doxia:doxia-module-xdoc:jar: 1.0:コンパイル、org.apache.maven.doxia:doxia-module-xhtml:jar:1.0:コンパイル、commons-lang:commons-lang:jar:2.4:コンパイル、org.codehaus.plexus:plexus-utils:jar: 2.0.2:コンパイル、org.apache.maven.shared:maven-invoker:jar:2.0.11:コンパイル]org.apache.maven.doxia:doxia-module-xhtml:jar:1.0:コンパイル、commons-lang:commons-lang:jar:2.4:コンパイル、org.codehaus.plexus:plexus-utils:jar:2.0.2:コンパイル、org.apache.maven.shared:maven-invoker:jar:2.0.11:compile]org.apache.maven.doxia:doxia-module-xhtml:jar:1.0:コンパイル、commons-lang:commons-lang:jar:2.4:コンパイル、org.codehaus.plexus:plexus-utils:jar:2.0.2:コンパイル、org.apache.maven.shared:maven-invoker:jar:2.0.11:compile]
[デバッグ] (f) プロジェクト = MavenProject: com.mycompany:MyApplication1.0.0 @ G:\dev\MyApplication\pom.xml
[デバッグ] (f) quiet = false
[デバッグ] (f) スキップ = false
[デバッグ] -- 構成の終了 --

明らかに間違っているものは見当たらないので、実行できない理由がわかりませんcheck

この目標を持つ実行構成を使用して、RAD 8.5 から Maven の埋め込みバージョンを実行しています。

クリーン コベルチュラ:チェック

ビルドを次のように実行すると

きれいなコベルチュラ:コベルチュラ

カバレッジが 85% 未満であることはわかっていても、チェック プロセスは実行されず、ビルドは成功します。

何が問題なのか、どうすればそれを機能させることができるのか、誰かが知ってcobertura:checkいますか?

4

2 に答える 2

0

私が望むことを行う正しい方法は、目標を持って Maven を呼び出すことですclean verify site

于 2014-07-18T17:27:59.003 に答える
0

plugins タグ内の pom.xml で以下を使用します

<plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>cobertura-maven-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <formats>
                        <format>html</format>
                        <format>xml</format>
                    </formats>
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>cobertura</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

pom.xmlのプロジェクトタグで以下を使用します。

<reporting>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>cobertura-maven-plugin</artifactId>
                <version>2.6</version>
            </plugin>
        </plugins>
    </reporting>

これは私のために働く

于 2015-05-26T12:11:24.730 に答える