groovy – 使用Spock的PowerMock
发布时间:2020-12-14 16:32:42 所属栏目:大数据 来源:网络整理
导读:我有一个带有一些静态方法的类.我需要模拟这些静态方法.我知道PowerMock会这样做,但是我找不到任何能够解释“Spock PowerMock”集成的教程/材料.我更喜欢Spock和Junit,因此这个难题.有没有办法让这两个框架发挥作用?任何帮助都非常感激.示例代码,更是如此.
我有一个带有一些静态方法的类.我需要模拟这些静态方法.我知道PowerMock会这样做,但是我找不到任何能够解释“Spock PowerMock”集成的教程/材料.我更喜欢Spock和Junit,因此这个难题.有没有办法让这两个框架发挥作用?任何帮助都非常感激.示例代码,更是如此.
更新:方法的当前状态 Spock behaving weirdly 解决方法
我也被困在这里一段时间了.搜索了几个小时后,我看到了这个github回购:
https://github.com/kriegaex/Spock_PowerMock.
我尝试添加一个PowerMockRule,它实际上使我能够与Spock一起使用PowerMock.我不得不添加这些依赖项.版本为1.5.4 <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4</artifactId> <version>${powermock.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4-rule</artifactId> <version>${powermock.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-classloading-xstream</artifactId> <version>${powermock.version}</version> <scope>test</scope> </dependency> 我的班级看起来像这样: import org.junit.Rule import org.mockito.Mockito import org.powermock.api.mockito.PowerMockito import org.powermock.core.classloader.annotations.PrepareForTest import org.powermock.modules.junit4.rule.PowerMockRule import spock.lang.Specification @PrepareForTest([SomeStaticClass.class]) public class FlightFormSpec extends Specification { @Rule PowerMockRule powerMockRule = new PowerMockRule(); def "When mocking static"() { setup : PowerMockito.mockStatic(SomeStaticClass.class) when : Mockito.when(SomeStaticClass.someStaticMethod()).thenReturn("Philippines!"); then : SomeStaticClass.someStaticMethod() == "Philippines!" } } 这是另一种资源:https://github.com/jayway/powermock/wiki/powermockrule (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |