当前位置: 首页 > 面试题库 >

在Java堆空间异常上运行Cucumber测试后,Jenkins构建失败

孟新知
2023-03-14
问题内容

使用Jenkins进行构建时出现以下异常。运行Cucumber测试后会引发此异常。

谁能说出Java堆空间上失败的确切位置?

您有什么办法可以解决吗?

一些背景:在Cucumber测试期间我有一个Java堆空间,在增加内存后,Cucumber测试通过了,但是我在此之后立即得到了这个Java堆空间。

谢谢,

骗子

mojoSucceeded org.apache.maven.plugins:maven-surefire-plugin:2.9(default-test)
[JENKINS] Recording test results
mavenExecutionResult exceptions not empty
message : Java heap space
Stack trace : 
java.lang.OutOfMemoryError: Java heap space
    at java.util.Arrays.copyOfRange(Arrays.java:3209)
    at java.lang.String.<init>(String.java:215)
    at com.sun.org.apache.xerces.internal.xni.XMLString.toString(XMLString.java:185)
    at com.sun.org.apache.xerces.internal.util.XMLAttributesImpl.getValue(XMLAttributesImpl.java:537)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser$AttributesProxy.getValue(AbstractSAXParser.java:2319)
    at org.dom4j.tree.AbstractElement.setAttributes(AbstractElement.java:543)
    at org.dom4j.io.SAXContentHandler.addAttributes(SAXContentHandler.java:916)
    at org.dom4j.io.SAXContentHandler.startElement(SAXContentHandler.java:249)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:179)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:377)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2756)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:647)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at org.dom4j.io.SAXReader.read(SAXReader.java:465)
    at org.dom4j.io.SAXReader.read(SAXReader.java:264)
    at hudson.tasks.junit.SuiteResult.parse(SuiteResult.java:112)
    at hudson.tasks.junit.TestResult.parse(TestResult.java:227)
    at hudson.tasks.junit.TestResult.parse(TestResult.java:163)
    at hudson.maven.reporters.SurefireArchiver.postExecute(SurefireArchiver.java:141)
    at hudson.maven.Maven3Builder$MavenExecutionListener.recordMojoEnded(Maven3Builder.java:421)
    at hudson.maven.Maven3Builder$MavenExecutionListener.mojoSucceeded(Maven3Builder.java:403)
    at org.jfrog.build.extractor.maven.BuildInfoRecorder.mojoSucceeded(BuildInfoRecorder.java:241)
    at org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire(DefaultExecutionEventCatapult.java:87)
    at org.apache.maven.lifecycle.internal.DefaultExecutionEventCatapult.fire(DefaultExecutionEventCatapult.java:42)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:228)
channel stopped

问题答案:

进入Jenkins设置并将环境变量添加MAVEN_OPTS到中-Xmx512m -XX:MaxPermSize=256m。测试完成后,似乎正在尝试解析结果,但XML文件太大。



 类似资料:
  • 我得到以下异常时,建设使用詹金斯。运行Cucumber测试后会引发此异常。 有人能说出java堆空间中失败的确切位置吗? 利奥尔

  • 我正在使用cucumber应用BDD方法,这很棒! 问题是我的测试套件变得越来越大,现在我得到了下面的异常,它由于错误的原因使我的测试失败... 我正在使用所有排序或cucumber功能,例如:背景,场景大纲和简单场景。我像这样运行测试: 我将我的特征文件分割到不同的目录(控制器1,控制器2...)和跑步者(RunCukes1Test,RunCukes2Test...),但这都无济于事。 当我运行

  • 我正在jenkins上运行一组测试,我得到以下结果: 好的东西告诉我行: maven-surefire-插件: 2.16是这里的问题,所以这里是我的pom文件检查: 我已经检查了maven仓库中的插件,我看到的唯一区别是插件标签中有插件,而在网站中它是在依赖标签中。 这里可能有什么错误? 谢谢 注:抱歉纯文本,但我不知道如何给代码上色=/

  • Android Studio2.2。3.直到最近,我一直在用我目前的项目成功地为android构建一个APK。据我所知,除了一个数据文件外,没有任何更改,我的“构建APK”步骤神秘地开始失败,在gradle控制台中出现了以下消息: 在我的“消息”窗口中,我看到了这个错误: 我试过很多东西: 将版本控制重置为我知道正在生成APK罚款的以前版本 在一个新位置重新克隆整个项目,以排除可能被拉入的文件,并

  • 步骤的定义: 这是文件夹的结构 当我运行时,我得到错误: 在步骤的定义中,我仍然从命令行得到相同的错误,但是当我在AS中运行它时,测试成功地运行了(它显示了最后一步的失败,但这是意料之中的)。 如果我用AndroidJunitRunner替换Runner,并添加一个non-cucumber测试,那么一切都正常:我也可以获取上下文。 如果从命令行执行以下步骤: instrumentation_res

  • 我们有一组UI测试每晚运行,有时一些测试由于网络故障而失败。为了避免假阴性测试结果,我使用了,它可以重新运行失败的测试多达3次。 当我从Eclispe右键单击套件运行测试时,它工作得非常好。xml—如果测试最初失败,但重试时通过,则第一个结果不算作失败。 但是,当作为Maven构建的一部分运行相同的测试时,如果任何测试失败,即使在重试时成功通过,构建也会失败。 例如,运行一个包含5个测试的套件,其