如何将测试设置元信息传递给Ginkgo Reporter

时间:2019-10-28 15:27:46

标签: go ginkgo

这个问题有多个层次;我将尝试从实际上所要实现的目标开始:)

使用menuaction,我的测试的一部分包括集成测试,该测试会启动生成自己的日志文件的其他进程。在测试失败时,我想将这些日志转储到stdout。 (由于日志是在临时目录中创建的,因此它们会在测试完成后清除,因此无法检查)。

我的想法是编写一个新的ginkgo并连接到ginkgo.Reporter接口函数中以实现此目的。

第一个问题是如何将日志文件位置传递到SpecDidComplete中。 (正在Reporter调用中创建日志)。似乎没有一种干净的方法,因此由于传递到BeforeEach函数中的SpecSummary有一个SpecDidComplete字段,我认为我可以简单地将日志位置写入{{ 1}},然后处理CapturedOutput以抓取我想要的数据。

但是,不幸的是,该字段始终为空。为什么会这样?

这是我设置的基本代码:

在套件中连接Reporter:

CapturedOutput

记者现在才这样做:

stdout

在我的测试中,我现在要做的是:

RunSpecsWithDefaultAndCustomReporters(t, "Integration Suite", []Reporter{NewGeodeLogReporter()})

0 个答案:

没有答案