【问题标题】:Puppet Development Kit test unit with multiple output targets具有多个输出目标的 Puppet Development Kit 测试单元
【发布时间】:2018-04-13 07:56:26
【问题描述】:

我们最近将 PDK 引入了我们的开发链,现在正努力让每个人都对它生成的测试输出感到满意。

我们需要一个 JUnit 测试报告作为 jenkins 作业的输出。我们已经解决了。

我们还需要控制台上的输出,因为一些开发人员发现在看到失败的测试之前必须打开 JUnit 报告文件非常烦人。

pdk test unit --format=junit:report.xml

是我们为 JUnit 配置输出的方式。

不幸的是,一旦您配置了 JUnit 报告,控制台/stdout 上就不会再打印输出了。即使您添加了另一种格式,例如 --format=text 而没有目标文件。

有没有办法在不运行两次 PDK 的情况下实现两者?

【问题讨论】:

    标签: puppet pdk


    【解决方案1】:

    文档中似乎没有,但这应该可以。

    pdk test unit --format=junit:report.xml --format=text:stdout 
    

    https://github.com/puppetlabs/pdk/blob/7b2950bc5fb2e88ead7321c82414459540949eb1/lib/pdk/cli/util/option_normalizer.rb#L10-L24

    我已提交票证以确保将其提升为https://puppet.com/docs/pdk/1.x/pdk_reference.html#pdk-test-unit-command 的文档

    【讨论】:

      【解决方案2】:

      来自 PDK 文档

      --格式=[:]

      指定输出的格式。或者,您可以指定一个目标文件 对于给定的输出格式, 例如 --format=junit:report.xml 。可以有多个--format 选项 指定只要它们都有不同的输出目标

      所以我相信,你可以尝试如下

      pdk test unit --tests=testcase_name --format=junit:report.xml --format=text:log.txt
      

      希望对你有帮助。

      【讨论】:

      • 这不会将输出打印到控制台,而是打印到两个文件。目标是有一个像 --format=junit:report.xml 这样的输出,一个直接进入标准输出。但是,一旦您将一个输出配置到文件中,stdout 上就不会再出现任何内容了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多