首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单元测试通过Maven,但通过Cobertura失败:“期望在分支目标65处有一个stackmap帧”

单元测试通过Maven,但通过Cobertura失败:“期望在分支目标65处有一个stackmap帧”
EN

Stack Overflow用户
提问于 2013-08-06 23:30:53
回答 2查看 5.3K关注 0票数 19

我最近在我的Java/Spring-MVC项目中添加了Cobertura插件。奇怪的是,我所有的单元测试都通过了,当Maven进行初始测试运行时,它们仍然通过,但是当Cobertura尝试运行测试时,它们都失败了,并显示相同的错误消息:

代码语言:javascript
复制
Expecting a stackmap frame at branch target 65 in method xxx.xxxx.xxxx.xxxx;)V at offset 40

我不知道为什么会发生这种情况,甚至不知道如何修复它。我在网上搜索过,但没有发现任何类似的问题。我使用JUnit和spring-test-mvc进行测试。

以前有没有人见过这个?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-06 23:42:51

当然,我在问完问题后就找到了答案,尽管我之前搜索了很长时间……

问题是,Cobertura在使用Java1.7时遇到了问题。您必须将以下行添加到pom.xml中:

代码语言:javascript
复制
<argLine>-XX:-UseSplitVerifier</argLine>

它位于配置元素中。下面是整个Cobertura部分:

代码语言:javascript
复制
     <plugin>
        <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.5.1</version>
            <configuration>
                <argLine>-XX:-UseSplitVerifier</argLine>
                <formats>
                    <format>xml</format>
                </formats>
            </configuration>
            <executions>
                <execution>
                    <phase>test</phase>
                    <goals>
                        <goal>cobertura</goal>
                    </goals>
                </execution>
            </executions>
       </plugin>

现在一切都像预期的那样工作了。

票数 19
EN

Stack Overflow用户

发布于 2017-02-10 04:33:14

已使用新插件修复

代码语言:javascript
复制
                  <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>cobertura-maven-plugin</artifactId>
                        <version>2.7</version>
                        <configuration>
                            <formats>
                                <format>xml</format>
                            </formats>
                        </configuration>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>cobertura</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18084436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档