社会!我需要你的帮助。我是QE,我需要解决一个问题,发生在我身上的事情。我需要找到方法,如何通过一些测试(总计和失败)解析控制台输出,并把它放在我的电子邮件的主题上。我试过log parser,不适合我,或者我不知道如何使用它
答案 0 :(得分:0)
我认为你不应该尝试解析日志,而应该采用不同的方法。我相信Jenkins(JUnit)将测试结果存储为人工制品。我确信有一个插件会让Jenkins在失败时以HTML格式向你发送测试结果 - 实际上我几乎可以肯定Jenkins可以开箱即用。
答案 1 :(得分:0)
您可以尝试下载日志(使用.../path/to/build/consoleText
代替.../path/to/build/console
来删除时间戳和其他内容),而不是使用jenkins插件。您可以使用cURL
(或wget
for linux)将其作为txt文件下载并像解析任何其他纯文本一样进行解析。
如果您不想下载它,并且您可以访问master上的内容,请参阅this SO answer。
Jenkins将控制台日志存储在master上。如果你想要程序化 访问日志,你在master上运行,你可以访问 Jenkins已经拥有的日志,而不是将其复制到工件或 必须获取http作业URL。
从 http://javadoc.jenkins.io/archive/jenkins-1.651/hudson/model/Run.html#getLogFile(), 这将返回控制台输出的File对象(在jenkins中) 文件系统,这是" log"文件在构建输出目录中。)
就我而言,我们使用链式(子)作业来进行解析和分析 父母的工作。
使用在Jenkins中运行的groovy脚本时,会得到一个名为的对象 "建立"为了奔跑。我们用它来获得 http://javadoc.jenkins.io/archive/jenkins-1.651/hudson/model/Build.html 对于上游作业,然后调用此作业的.getLogFile()。
添加奖金;因为它只是一个File对象,所以我们调用.getParent() 获取Jenkins存储构建抵押品的文件夹(如test xmls, 环境变量,以及其他可能未明确的事情 通过工件暴露出来,我们也可以解析。
双倍加成奖金;我们也使用矩阵作业。这有时会使 推断系统上的文件路径是一种痛苦。 .getLogFile()。getParent()消除了所有的痛苦。