我在最后一小时左右一直在努力让以下工作。我的附件存储在目标目录中。但是它们没有在类级别或测试级别的测试页面上链接。
我尝试了以下各种组合:
target/surefire-reports/[class]/
与目标/surefire-reports/[class].xml
文件夹target/surefire-reports/[class.mothod]/
与target/surefire-reports/[class].xml
/testArtifacts/[class]/
中并在标准列表中打印[[ATTACHMENT|target/testArtifacts/[class]/captureDebug.txt]]
target/testArtifacts/[class]/
中并在标准列表中打印[[ATTACHMENT|/var/lib/jenkins/.../target/testArtifacts/[class]/captureDebug.txt]]
我正在运行一个奴隶主设置,而不是那件事。
我的Jenkins版本是1.529,JUnit Attachments插件是1.3。
https://wiki.jenkins-ci.org/display/JENKINS/JUnit+Attachments+Plugin
我创建了一个简单的项目来举例说明这个问题,你可以在这里得到它:
https://github.com/marklemay/simple-failing-project
使用命令行maven(mvn -U -Pci clean integration-test -e
)构建。
答案 0 :(得分:4)
当我第一次尝试使用JUnit附件插件时,我认为它不起作用,因为似乎没有任何效果。我使用Jenkins版本1.528,JUnitAttachment插件版本1.3,Ant(不是Maven)构建在master(无奴隶)和[[ATTACHMENT|...]]
(带绝对路径)的方法stderr
。确实复制到<JENKINSDIR>/jobs/<JOBNAME>/builds/<DATETIME>/junit-attachments
中的构建结果目录的文件。附件仅显示在班级上。 junit-attachments目录是否出现在构建结果目录中?
答案 1 :(得分:1)
在将附件写入预期目录时,您的示例项目对我有用(排序),如下面的差异所示。我正在使用Jenkins 1.540和junit-attachments-plugin 1.3,并且项目配置为maven 2/3。我在测试类页面的页面上看到了附件。
但是,我提到的那种“类型”是因为您的项目和附件遇到了我正在尝试解决的问题,当点击附件的链接时会产生404页面。
--- a/src/test/Math/MathTest.java
+++ b/src/test/Math/MathTest.java
@@ -14,13 +14,13 @@ public class MathTest {
public void test1p1e2() throws Exception {
//does file writing work?
- String relpath = "target/testArtifacts/";
+ String relpath = "target/surefire-reports/Math.MathTest/";
(new File(relpath)).mkdirs();
String root = relpath + this.getClass().getName();
(new File(root)).mkdirs();
- File path = new File(root + "/Insight.math");
+ File path = new File(root + "/test1ple2.math");
FileUtils.write(path, "things are getting SUbtracted!!!!");
答案 2 :(得分:1)
我认为这个问题的解决方案是升级到最新版本的Jenkins。我的公司做了blog post关于我们如何配置JUnit Attachments Jenkins插件,以防任何人。