spock相关内容

Spock模拟私有变量

我想知道如何在Groovy/Spock的类中模拟一些私有变量.假设我们有以下代码: 公共类汽车{私人引擎引擎;公共无效驱动器(){System.out.println("test");如果(engine.isState()){//做一点事} 别的 {//做一点事}}} 在Mockito中,我可以写: @Mock私人引擎引擎;@InjectMocks私家车car = new Car();@ ..
发布时间:2021-05-13 19:39:45 其他开发

Spock中的运行时异常模拟groovy.sql

为了寻找能够在Spock规范中运行此代码的正确配置/语法,我一直在StackOverflow和Google周围搜寻: Sql mockSql = Mock() 但是,当我运行单元测试时,CGLIB抛出了一个令人讨厌的异常: java.lang.IllegalAccessError:尝试从类groovy.sql.Sql $$ EnhancerByCGLIB $$ d0b7cd7f访问方法 ..
发布时间:2021-05-13 19:39:38 其他开发

Spock Mock无法用于单元测试

我从Spock单元测试中得到了奇怪的结果,我认为这是由于Groovy的 但是当我运行它时,出现以下失败/错误: 条件不满足:"$ {f1}-$ {f2}" == str||||嘶嘶作响|null-空错误的预期:null-null实际的:碳酸-嗡嗡声 有什么想法我要去哪里吗? 解决方案 来自我们对@smeeb的问题的另一个讨论中的讨论,我对此进行了更 ..
发布时间:2021-05-13 19:38:32 其他开发

Spock存根的泛型

我无法为通用类创建编译Spock存根.构造函数的签名如下: SomeClass(SerSup capSup,字符串foo,字符串栏); 我需要将第一个参数存根.以下是我失败的尝试. 第一次尝试: def someClass = new SomeClass(Stub(SerSup),"foo","bar")错误:Groovyc:意外令牌:>状态栏:预期为“, ..
发布时间:2021-05-10 18:52:14 Java开发

如何避免在Spock中强制转换参数

我想从存储库中获取列表并声明其内容. 在下面的代码中,我收到一条警告,指出不能将Object分配给List 有什么方法可以添加更好的参数来处理这种情况? myDomainObjectRepository.save(_) >> { arguments -> final List myDomainObjects = arguments[0] ..
发布时间:2020-11-20 23:53:16 其他开发

Groovy Singleton和测试问题(与Spock一起使用)

在此处上有关于测试和单例的讨论……但这是关于Java模式的讨论. 我的问题特别是关于Groovy @Singleton(注释)实现此模式的方式. 这似乎又是Groovy Goodness的另一点.但是,在使用具有此批注的类进行测试(使用Spock)时,我有一个问题. 如果该实例的任何状态在测试期间发生变化(从原始的刚刚构建的状态开始),只要我的实验表明这将继续进行下一个测试... ..
发布时间:2020-11-20 23:50:57 其他开发

是否可以随机执行Spock测试的顺序?

大多数情况下,似乎spock测试都是以相同的顺序执行的. 是否可以设置一些选项以随机顺序执行它们? 更新:当tim_yates评论“测试应该隔离,顺序无关紧要"时,我想我应该解释一下我为什么要拥有此功能... 我们进行了一次代码撤退,试图将测试变成绿色.因此,我们在被测类中实现了一个状态,然后将其用于返回所有测试的corerct结果. 为了避免这种邪恶的编码,我认为最好以随 ..
发布时间:2020-11-20 23:48:46 其他开发

如何在Grails集成测试中部分模拟服务

我正在尝试为调用服务方法的控制器编写测试.我想在该服务中模拟一个依赖方法. 我的规格如下: MyController myController = new MyController() def mockMyService def "My spy should be called"() { when: mockMyService = Spy(MyService) ..
发布时间:2020-11-20 23:39:09 其他开发

Spock:模拟类的方法不匹配

我能够为我的代码的精简版通过测试(感谢cgrim!这是代码的精简版: class VmExportTaskSplitter implements TaskSplitter { @Inject AssetServiceClient assetServiceClient @Override int splitAndSend(Export exp ..
发布时间:2020-11-20 23:33:29 其他开发

Spock测试与junit 5测试一起无法运行

我的堆栈: IDEA 2019.1.3 Springboot 2.1.6 Java 11 Maven 3.8.0 Groovy 2.5 Spock 1.3 朱尼木星5.5.1 Junit vintage 5.5.1 GMavenPlus插件2.7.1 我们想开始在Spock测试框架中编写测试.我遵循了此方法,但是我没有成功.当我尝试运行所有测试时,我的Spock测试未运 ..
发布时间:2020-11-20 23:13:11 Java开发