欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

Gmock 0.7.0 发布

程序员文章站 2022-05-31 10:40:49
...
Gmock是一个基于Groovy语言的mock框架。Gmock利用了Groovy语言的特性,提供了简洁可读的语法,并且用Gmock mock出来的对象可以在Java代码中使用,所以你可以使用Java编写代码而使用Groovy和Gmock编写测试。

本版本加入了以下特征:

1. 设定方法调用的严格顺序(strict ordering)。这是通过ordered闭包实现的。下面是一个被缓存的数据库的例子:

def database = mock()
def cache = mock()
ordered {
  database.open()
  cache.get("select * from cat").returns(null)
  database.query("select * from cat").returns(["cat1", "cat2"])
  cache.put("select * from cat", ["cat1", "cat2"])
  database.close()
}
play {
  ...
}


2. 只mock一个对象的部分方法(partial mocking)。这可以通过对一个已有对象调用mock()方法来实现。下面是mock一个grails的controller的例子:

def controller = new SomeController()
mock(controller).params.returns([id: 3])
play {
   assertEquals 3, controller.params.id
}


3. 支持使用正则表达式作为方法名字。例如:

def mock = mock()
mock./set.*/(1).returns(2)
play {
  assertEquals 2, mock.setSomething(1)
}


Gmock 0.7.0是最后一个支持Groovy 1.5.x的版本,下一个版本开始将只支持Groovy 1.6.x。

更详细的信息请访问http://gmock.org/http://code.google.com/p/gmock/
相关标签: Database Groovy