首页 > 解决方案 > 在 Spock “cleanup” 方法中获取测试结果

问题描述

Spock检查中的清理方法是否有可能通过或失败?在 java 的 JUnit/TestNG/Cucumber 中,它可以在一行中完成。但是Spock呢?

我在这里发现了类似的问题:

在 Specification.cleanup() 中查找测试的结果/状态

当 Spock 测试失败时执行一些操作

但两者似乎都过于复杂,而且是几年前的事了。有没有更好的解决方案?

提前致谢

更新:主要目标是仅在我的 geb/spock 项目中保存屏幕截图并为失败的测试执行一些额外的操作

标签: groovyspockgeb

解决方案


它不是过于复杂的 IMO,它是一种通过侦听器和扩展连接到事件的灵活方法。cleanup:顾名思义,该块用于清理测试装置。基于测试结果的报告或其他事情将以不同的方式完成。

话虽如此,对您的问题的简单而简短的回答是:这仍然是做到这一点的规范方法。顺便说一句,你没有告诉我们你想对清理块中的测试结果做什么。这种事情——解释你想如何做某事但不解释为什么(即你试图解决哪个问题)被称为XY 问题


推荐阅读