groovy单元测试,mock静态方法,需要使用PowerMockito。还会影响其他普通方法的mock。 例如下面的代码: 1.OrderInfoServiceProxy.getOrderInfo为静态方法。 2.orderActionServiceProxy.updateOrderData为普通public方法,但是该类有static公共变量。 但是如果用spock+PowerMockito,mock掉上面第一条。第二条也需要在PrepareForTest注解上加上该类
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(Sputnik.class)
@PrepareForTest([OrderInfoServiceProxy.class, OrderActionServiceProxy.class])
@SuppressStaticInitializationFor(["com.ctrip.tourtailor.vendorform.service.biz.proxy.OrderInfoServiceProxy", "com.ctrip.tourtailor.vendorform.service.biz.proxy.OrderActionServiceProxy"])
class OrderServiceTimeCoreSpockTest extends Specification {
def orderServiceTimeCore = new OrderServiceTimeCore()
def orderActionServiceProxy = Mock(OrderActionServiceProxy)
void setup()
相关阅读
发表评论