我在测试用例中使用 spock,并按如下方式存根一个类,inventryDAO 有一个 getUser 方法,它接受 PersistableKey 类型的参数。
在主代码中,参数创建如下
PersistableKey userKey = new PersistableKey(1)
userKey.setRepresentedObjectClass(User.class);
Run Code Online (Sandbox Code Playgroud)
在我的规范中,如果我按如下方式编写存根和参数,则效果很好
User collUser = new User(1);
InventoryDAO inventoryDAO = Stub()
PersistableKey userKey = new PersistableKey(1)
userKey.setRepresentedObjectClass(User.class);
inventoryDAO.getUser(userKey) >> collUser
Run Code Online (Sandbox Code Playgroud)
但我真正想做的是能够在不设置 setRepresentedObjectClass 的情况下传递参数,如下所示
User collUser = new User(1);
InventoryDAO inventoryDAO = Stub()
PersistableKey userKey = new PersistableKey(1)
inventoryDAO.getUser(userKey) >> collUser
Run Code Online (Sandbox Code Playgroud)
是否可以根据部分值匹配参数?