java - Java 8 到 11 中 org.easymock.EasyMock.capture 的替代方案
问题描述
我正在尝试在我的测试中捕获值
...
final Capture<MyDTO> myDTOCaptured = new Capture<MyDTO>();
EasyMock.expect(this.serviceMock.execute(capture(myDTOCaptured)).andReturn(someResult);
...
文档说:
已弃用的 API
org.easymock.EasyMock.capture(Capture) 由于执行更严格的擦除,在 Java 7 中无法编译
http://easymock.sourceforge.net/api/easymock/3.1/deprecated-list.html
3.1 版是我们正在使用的版本。
在 Java 8+ 中是否有捕获的替代方法?我想另一种选择是升级版本。
解决方案
升级到最新的 EasyMock (4.2) 并使用通用方法capture(Capture<T> capture)作为替代
期望任何对象,但捕获它以供以后使用
示例:
final Capture<TwoWayChannelMessage> initiateCapture = new Capture<>(); connection.sendToClient(capture(initiateCapture));
推荐阅读
- express - 在使用 puppeteer 进行端到端测试期间仅加载选定的模块
- javascript - 如何根据 id 对 geoJSON 功能进行不同的着色?谷歌地图
- java - 没有空格的漂亮打印杰克逊 json?
- python - 如何在链接到共享点列表的 .accdb 文件上使用 pyodbc
- javascript - 有没有办法在方法参数中的解构元素上使用 Typescript 装饰器?
- hyperledger - Hyperledger composer-cli 未找到 gRPC 二进制文件
- html - 如何不让文字超过按钮?
- python - 替换字符串中的非 ASCII 字符
- reactjs - 如何重用组件逻辑
- javascript - 404 错误使用 xpage 上的传单添加标记