首页 > 解决方案 > 有没有办法可以将我的机器人测试结果从 Jenkins 报告给 slack?

问题描述

我有在 Jenkins 上运行的测试。- 机器人框架测试。它们按计划运行,但没有人真正看一眼。

我想看看是否有一种机制可以在作业完成执行测试后将结果报告给松弛通道。


def branch = "branchName"

node ('AWS-LoadTest') { 
    stage ('Checkout') {
        cleanWs()
        checkout([$class: 'GitSCM', branches: [[name: branch]], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '9999999-99999999', url: 'git@github.com:Abcd/abc.git']]]) 
    }
    stage ('Execute Tests'){ 
        def colorCode = '#FF0000'
        def buildStatus = 'FAILURE'
        String slackChannel='#slackChannelName'
        try {
            bat """  
            robot -d outputs --variable ENV:prod -i production TestAutomation/RobotTests/testsuites/test.robot
            """
            buildStatus = 'SUCCESS'
            colorCode = '#00FF00'
        } catch (e) {
            colorCode = '#FF0000'
            def summary = "${buildStatus}: Production Health Check Test, ${env.BUILD_URL}",
            slackSend(channel: slackChannel, color: 'danger', message: """)
            }

         finally {
            step([
            $class : 'RobotPublisher',
            outputPath : 'outputs/',
            outputFileName : "*.xml",
            disableArchiveOutput : false,
            passThreshold : 100,
            unstableThreshold: 80.0,
            otherFiles : "*.png" ])    
        }   
    }
}

标签: jenkinsjenkins-pipelinejenkins-groovy

解决方案


推荐阅读