jenkins pipline中使用Email-ext插件

首先安装 Email-ext plugin插件
在jenkins中配置Jenkins->Manage Jenkins->Configure System
在这里插入图片描述
由于测试脚本基于java语言,所以需要Junit插件来发布测试结果,生成数据。在Jenkins->Manage Jenkins->Manage Plugins中安装junit插件
Email-ext插件可以用groovy脚本来自定义邮件。功能很强大,并且作者已经提供了一些模板Templates,然后就可以开始你的构建了。
Jenkins file:

pipeline{
   
	agent any
	tools {
   
        maven 'M 3'
    }
	stages{
   
		stage("checkout code"){
   
			steps {
   	
			    script{
   
					//pull your code
			}}
		}
		stage("run test case"){
   
			steps {
   	
			    script{
   
					//withMaven(maven: 'M 3') {
   
					//			bat 'mvn test'
					//		}
					//bat "cd C:\\Users\\liul5\\Desktop\\test\\project"
					bat "mvn test"
			}}
		}

	}
	post('Generate report') {
    
		always {
   
			script{
   
                cucumber fileIncludePattern: '**/cucumber-default-reports/*.json', sortingMethod: 'ALPHABETICAL'
                
                junit '**/cucumber-default-reports/*.xml' //必须有这一步,否则没有数据                  
                emailext subject: "Automation Result5: Job '${env.JOB_NAME} - ${env.BUILD_NUMBER}'",
                   body:'''${SCRIPT,template="groovy-html-larry-refactor.template"}''',
                    to:'$DEFAULT_RECIPIENTS'
                
				emailext subject: "Automation Result6: Job '${env.JOB_NAME} - ${env.BUILD_NUMBER}'",
                   body:''' ${SCRIPT,template="groovy-html-refactor.template"}''',
                    to:'$DEFAULT_RECIPIENTS'

                emailext subject: "Automation Result: Job '${env.JOB_NAME} - ${env.BUILD_NUMBER}'", 
                body:'''  
                      total:${
   TEST_COUNTS,var="total"},
                      pass:${
   TEST_COUNTS,var="pass"},
                      fail:${
   TEST_COUNTS,var="fail"}
                   ''',
                to:'$DEFAULT_RECIPIENTS'
                      
	}}}
}

引用邮件模板在body中使用${SCRIPT,template="groovy-html-refactor.template"},必须用三引号括起来,可以直接使用作者提供的模板,${SCRIPT,template="模板名"}
如果想要自定义模板的话,需要在jenkins的根目录下创建一个email-templates文件夹,将模板放到该目录中(jenkins非msi的安装方式下的Windows的路径:C:\Users\用户名\.jenkins\email-templates,msi安装方式:C:\Program Files (x86)\Jenkins\email-templates)。自定义邮件的语法请查看插件文档document,或者作者的模板Templates
最终结果图:
在这里插入图片描述
在这里插入图片描述
模板一:

<STYLE>
  BODY, TABLE, TD, TH, P {
    
    font-family: Calibri, Verdana, Helvetica, sans serif;
    font-size: 12px;
    color: black;
  }
  .console {
    
    font-family: Courier New;
  }
  .filesChanged {
    
    width: 10%;
    padding-left: 10px;
  }
  .section {
    
    width: 100%;
    border: thin black dotted;
  }
  .td-title-main {
    
    color: white;
    font-size: 200%;
    padding-left: 5px;
    font-weight: bold;
  }
  .td-title {
    
    color: white;
    font-size: 120%;
    font-weight: bold;
    padding-left: 5px;
    text-transform: uppercase;
  }
  .td-title-tests {
    
    font-weight: bold;
    font-size: 120%;
  }
  .td-header-maven-module {
    
    font-weight: bold;
    font-size: 120%;    
  }
  .td-maven-artifact {
    
    padding-left: 5px;
  }
  .tr-title {
    
    background-color: <%= (build.result == null || build.result.toString() == 'SUCCESS') ? '#27AE60' : build.result.toString() == 'FAILURE' ? '#E74C3C' : '#f4e242' %>;
  }
  .test {
    
    padding-left: 20px;
  }
  .test-fixed {
    
    color: #27AE60;
  }
  .test-failed {
    
    color: #E74C3C;
  }
</STYLE>
<BODY>
  <!-- BUILD RESULT -->
  <table class="section">
    <tr class="tr-title">
      <td class="td-title-main" colspan=2>
        BUILD ${build.result ?: 'COMPLETED'}
      </td>
    </tr>
	<tr>
      <td>Project:</td>
      <td>${project.name}</td>
    
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值