• jenkins中邮件模板获取测试结果值为空,${TEST_COUNTS},${FAILED_TESTS}为空问题


    在jenkins中配置邮件模板,使用邮件发送构建结果的通知,我这里使用的是 Extended E-mail Notification 配置邮件通知的。

    1)首先安装 Email Extension 插件,管理Jenkins->插件管理,这里安装插件“Email Extension”用于设置邮件模板。

    2)配置系统默认邮件参数,管理Jenkins->系统配置,Extended E-mail Notification 设置相关参数。

    具体的配置说明可参考我的另一片文章:https://www.cnblogs.com/mq0036/p/16136653.html

    模板变量说明,在如下图中点击问号,则会显示可以使用的变量。

     我在邮件模板中获取测试结果信息为空,从网上查询解决方法,参考如下。 

    =======================================================================================

    解决jenkins获取${TEST_COUNTS}值为空问题



    ${TEST_COUNTS}用法:-显示测试的数量。
    · var– 默认“total”。
    · total -所有测试的数量。
    · fail -失败测试的数量。
    · skip -跳过测试的数量。
    项目使用的testng框架,执行脚本时明明有打印显示出执行test的个数,以及成功,失败,忽略的test数量,但是使用
    ${TEST_COUNTS}
    ${TEST_COUNTS, var="fail"}
    ${TEST_COUNTS, var="skip"}
    获取的值均为空。
    解决方法:
    jenkins中选择对应的项目,点击右侧菜单-配置-构建后操作-添加构建后操作步骤-Publish TestNG Results,其中参数默认即可,如下图:

    保存后,再次执行构建,查看邮件,就可以正确获取到测试执行的数量了。

    如果是使用 Pipeline 模式,可以参考插件的官方网站说明,如下:

      post {
        always {
          step([$class: 'Publisher', reportFilenamePattern: '**/testng-results.xml'])
        }
      }

    并且在jenkins的项目中也增加了TestNG Results和最新测试结果菜单,这两个菜单里面关于测试执行结果都显示的很详细。

    出处:https://blog.csdn.net/qq_26461949/article/details/111498878

    =======================================================================================

    pytest在jenkins中获取${TEST_COUNTS}值为空问题

    网上查询的解决办法大部分都是java语言的框架,执行结束会生成xml文件

    pytest框架的解决方法

    需要在 pytest.main()添加参数:–junitxml=report/results.xml

    pytest.main(["-sq","--alluredir", reportDir+"/tmp",'--clean-alluredir',f'--junitxml={reportDir+"/results.xml"}'])

    在构建后操作中选择Publish Junit test result report,

    在这里插入图片描述

    配置xml文件,其它选项默认不需要修改
    在这里插入图片描述

    保存上述配置,再次构建,查看邮件,就可以正确获取到测试执行的数量

    在这里插入图片描述

    出处:https://blog.csdn.net/a285746751/article/details/118667711

    =======================================================================================

    我自己是测试C#程序的 msTest 代码,我的环境是VS2019,测试是使用的 vsTest.Console.exe 工具,日志中也能正常显示测试结果,但邮件模板中却无法获取到。

     我这里使用的插件是Mstest

     如果是使用的Pipeline模式的话,可参考插件官方网站说明,如下:

    Pipeline Support

    The MSTest plugin supports the pipeline plugin (and/or Jenkinsfile build definitions). The plugin call be called with an instruction like

    step([$class: 'MSTestPublisher', testResultsFile:"**/*.trx", failOnError: true, keepLongStdio: true])
    

    Or with its shortest alternative:

    mstest testResultsFile:"**/*.trx", keepLongStdio: true
    大家根据自己使用的环境,以及编程语言等,选择不同的插件。
  • 相关阅读:
    创建数据库链
    redis命令
    redis.conf文件配置信息
    mybatis调用存储过程实现
    oracle游标使用遍历3种方法
    Proud Merchants
    Bag Problem
    Watch The Movie
    Accepted Necklace
    Bone Collector II
  • 原文地址:https://www.cnblogs.com/mq0036/p/16291304.html
Copyright © 2020-2023  润新知