Jenkins 邮件指定内容问题

昨天接到需求,要将邮件内容更直观体现。然而之前写了很多断言都没有指明哪些url报错,整个改太麻烦。就想到指定一个侦听器,继承TestListenerAdapter并且实现ITestListener,在onTestFailure方法下将错误信息重写一下。想法很好。


问题就来了。在本地用idea的run跑能看到重写的错误信息输出,但是用maven命令运行mvn clean test,运行结果并没有重写的message信息。这个稍微坑了我一下。没办法只能system.out.println(message[0]);

输出出来后再通过Jenkins的${BUILD_LOG_MULTILINE_REGEX}这个参数,正则过滤。参考https://blog.csdn.net/chengtong_java/article/details/49815311

不过关于这个参数还真没搜到讲解的,唯一搜到的http://blog.163.com/hywang_yl/blog/static/2397761012016665532949/

看起来这个正则写法应该就是()里加正则表达式。所以过滤这个错误信息描述就:

${BUILD_LOG_MULTILINE_REGEX,showTruncatedLines="false",regex="ERRORMESSAGE:(.*)"}

不过唯一的缺点就是这些错误信息不能换行,换行就匹配不到了。匹配换行符的话可能需要其他的写法了,不过没有在深入研究这个表达式了。如果有懂的欢迎评论指出。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,388评论 25 709
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,689评论 0 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,403评论 19 139
  • 今天超开心!!! 哈哈哈哈哈哈哈哈哈哈哈哈哈哈!
    温墨如水阅读 789评论 0 0
  • lemonshennn阅读 3,759评论 0 1