当前位置: 首页 > 知识库问答 >
问题:

Spock-Test-Framework中的Mock-Signature似乎与docs中的不同

叶福
2023-03-14
def subscriber = Spy(SubscriberImpl, constructorArgs: ["Fred"])
public <T> T Spy(Map<String, Object> options, Class<T> type)
def subscriber = Spy([constructorArgs: ["Fred"]] as Map<String, Object>, SubscriberImpl)

但不管怎样,它是如何随着更新而改变行为的,它以前是如何工作的?也许有人能解除我的困惑...?

谢了。

共有1个答案

聂风史
2023-03-14

将命名参数转换为映射是Groovy的内置特性,请参见

  • Groovy Goodness:命名参数转换为map
  • Groovy goodness:使用IntelliJ idea将方法参数转换为命名映射参数

至于为什么IDEA会像你描述的那样,我不知道。我也在使用IDEA2018,也看到了同样的情况。搜索JetBrains bug数据库,如果它还不存在,就创建一个。它只是一个表面的东西反正,但会很好的修复。顺便说一句,您还可以修复IDE对背景的着色,因为方法签名如下所示:

def subscriber = Spy(SubscriberImpl as Class, constructorArgs: ["Fred"])
SubscriberImpl subscriber = Spy(constructorArgs: ["Fred"])
 类似资料:
  • 我在从Spock Groovy mocked interface返回所需对象列表时遇到问题: 所以我想在课堂上嘲弄一下: 我有一个测试: 当我尝试运行该测试时,我得到一个断言错误: 朱尼特。框架断言失败错误:应为:[com.example]。SomeObject@1fa268de,com。实例SomeOjbect@4f6ee6e4]实际值:空 所以这意味着从方法返回了,而不是我期望的列表,这让我很

  • 本节介绍与Perl相关的各种模拟测试。 您可以在本地计算机上下载这些示例模拟测试,并在方便时离线解决。 每个模拟测试都提供一个模拟测试密钥,让您自己验证最终得分和评分。 Perl Mock Test I 问题1 - 关于Perl,以下哪项是正确的? A - Perl代表实用提取和报告语言。 B - Perl是一种开源软件,根据其Artistic License或GNU通用公共许可证(GPL)获得许

  • 本节介绍与Ant相关的各种模拟测试。 您可以在本地计算机上下载这些示例模拟测试,并在方便时离线解决。 每个模拟测试都提供一个模拟测试密钥,让您自己验证最终得分和评分。 Ant Mock Test I 问题1 - 关于Ant,以下哪项是正确的? A - Ant是平台中立的,可以处理特定于平台的属性,例如文件分隔符。 B - Ant can be used to perform platform sp

  • 本节介绍与CSS相关的各种模拟测试。 您可以在本地计算机上下载这些示例模拟测试,并在方便时离线解决。 每个模拟测试都提供一个模拟测试密钥,让您自己验证最终得分和评分。 CSS Mock Test I 问题1 - 关于CSS,以下哪项是正确的? A - CSS用于以简单方便的方式控制Web文档的样式。 B - CSS is the acronym for "Cascading Style Sheet

  • 本节介绍与JDBC Framework相关的各种模拟测试。 您可以在本地计算机上下载这些示例模拟测试,并在方便时离线解决。 每个模拟测试都提供一个模拟测试密钥,让您自己验证最终得分和评分。 JDBC Mock Test I 问题1 - JDBC代表什么? A - Java数据库连接 B - 用于基本连接的Java驱动程序 C - 联合数据库连接 D - 基本连接的联合驱动程序 Answer : A

  • 本节介绍与Spring Framework相关的各种模拟测试。 您可以在本地计算机上下载这些示例模拟测试,并在方便时离线解决。 每个模拟测试都提供一个模拟测试密钥,让您自己验证最终得分和评分。 Spring Mock Test I 问题1 - 什么是Spring? A - Spring是企业Java的开源开发框架。 B - Spring是一个专有框架。 C - Spring是.Net应用程序的开发