【发布时间】:2012-05-03 20:34:58
【问题描述】:
我得到了一些典型的茉莉花代码,例如:
expect(actual).someMatcher(expected);
有没有办法确定这种匹配是成功还是失败(以编程方式)?根据结果,我可能想在之后进行某些操作。例如,如果失败,将实际写入磁盘。
使用匹配器的返回值似乎不起作用。它总是返回 undefined。
【问题讨论】:
-
能把测试代码和相关源码贴出来吗?
我得到了一些典型的茉莉花代码,例如:
expect(actual).someMatcher(expected);
有没有办法确定这种匹配是成功还是失败(以编程方式)?根据结果,我可能想在之后进行某些操作。例如,如果失败,将实际写入磁盘。
使用匹配器的返回值似乎不起作用。它总是返回 undefined。
【问题讨论】:
最简洁的方法是编写自己的reporter。
或者,在规范中,this 是规范。 this.results() 将返回结果,您可以通过查看 this.results() 的值的 items_ 属性来获得所需的一切。
【讨论】:
this 不再是 spec 对象本身,而是一个用于挂起您希望对 beforeEach、it 和 @ 可用的变量的虚拟位置987654329@。所以记者现在可能是最好的选择。