我想使用Spock注释@IgnoreIf({condition})
忽略从Intellij IDEA运行时基于给定环境变量的测试。Grails 3 - 有条件地忽略Spock测试
我在测试中使用这个:@IgnoreIf({ env.IGNORE_REDIS == 'true' })
。而在摇篮运行配置设置如下:
然而,环境属性永远不会设置。它是一个IDEA错误还是我在配置中丢失了某些东西?
我想使用Spock注释@IgnoreIf({condition})
忽略从Intellij IDEA运行时基于给定环境变量的测试。Grails 3 - 有条件地忽略Spock测试
我在测试中使用这个:@IgnoreIf({ env.IGNORE_REDIS == 'true' })
。而在摇篮运行配置设置如下:
然而,环境属性永远不会设置。它是一个IDEA错误还是我在配置中丢失了某些东西?
您需要修改您的gradle测试任务以复制系统属性。
task integrationTest(...) {
systemProperties System.properties // this line passes the systemproperties from gradle to your tests
}
以及在斯波克测试:
@IgnoreIf({sys['IGNORE_REDIS']})
//or
@IgnoreIf({sys.IGNORE_REDIS})
//or
@IgnoreIf({sys.IGNORE_REDIS == 'true'})
你需要确保财产通过gradle这个任务。默认情况下,它们不会 –
我传递这些参数,如'bootRun {systemProperties = System.properties}'。这是你的意思吗?如果我记录System.properties,我会在那里看到我的价值。问题是我如何在'@ IgnoreIf''中访问它。 – kuceram
'System.getProperty('IGNORE_REDIS')=='true'' –