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

当与其他集成测试一起运行时,Spock集成测试失败-使用集成在隔离中成功:Spock

宋嘉懿
2023-03-14
grails test-app integration:spock CreditServiceSpec

完成了818个集成测试,0在104001ms运行1个spock测试时失败...失败:CreditServiceSpec groovy.lang.groovyRuntimeException:未能调用构造函数:public org.codehaus.groovy.grails.test.support.grailstestautoWirer(org.springframework.context.applicationContext),参数:[]原因:java.lang.IllegalArgumentException at grails.plugin.spock.integrationspec.$spock_initializesharedFields(integrationspec.33)完成0 spock测试,0在

无论运行我构建的完整测试还是下面的示例,我都会得到完全相同的异常:

import grails.plugin.spock.IntegrationSpec

class CreditServiceSpec extends IntegrationSpec {
    def setup() {}
    def cleanup() {}

    public void "sample"() {
        setup:"Nothing to do here."

        expect:"This is the truest of truths..."
        true == true
    }
}

我确实打开了IntegrationSpec,并查看了第33行:

@Shared private autowirer = new GrailsTestAutowirer(applicationContext)

但是确定applicationContext如何/为什么没有正确地传递是我无法确定的,也许这是我的问题的主旨。

有没有人遇到过这种行为,并找到了一种方法来让spock集成与其他测试玩得很好?谢了。

共有1个答案

华景明
2023-03-14

看起来Grails2.1.1在集成范围内的Spock测试中有几个问题。杰夫的评论,尤其是彼得的评论,听起来像是你的问题;基本上,ApplicationHolder是null或空列表。

父任务将Grails 2.2.5列为修复版本。您有没有机会升级到那个版本(或者更高的版本),看看问题是否仍然存在?

也有这样的情况,简单的Grails Clean修复了类似的问题。

 类似资料:
  • 我对hibernate有点陌生,所以我从一些简单的东西开始。 根据F.I.R.S.T测试原则,单元测试必须是I-隔离的。我试图使用注释将其应用于存储库层(Hibernate\JPA)的集成测试: 但是,只要在一个事务中执行两个方法,hibernate实际上并不执行它们(据我所知)--至少日志中没有行。 我看到了一个自带并调用其方法的解决方案。但我不喜欢它,因为我试图在不绑定Hibernate\JP

  • 在我的应用程序中有,它有一个操作,如下所示: 现在,我正在测试视图和模型,如下所示: 但是我的测试用例失败了,stacktrace如下: 正在运行2个spock测试。。。第1页,共2页 有什么问题吗。

  • 下面是我的应用程序主类: 但当我运行这个程序时,我得到了一个非常奇怪的错误: groovyx.net.http.restclient:解析'application/json'响应时出错

  • 问题内容: 我使用spock编写测试用例,使用jenkins运行和发布我的测试用例。我能够得到报告的代码覆盖率,但是声纳 仅 向我显示 Java 单元测试用例;在 常规测试案例是完全缺失 以下pom.xml用作参考 https://github.com/kkapelon/java-testing-with- spock/blob/master/chapter7/spring-standalone-

  • 我有一个用selenium进行单元测试和集成测试的项目。 当我用IntelliJ执行cucumber集成测试时,它工作得很好,您可以看到: 用Intellij执行cucumber集成测试 但是,当我执行mvn集成测试时,似乎没有发现任何联调: 故障保护输出 我定义了以下POM: > 文件夹结构是文件夹结构 mvn集成-测试输出https://drive . Google . com/file/d/

  • 主要内容:集成测试背后的原因,集成测试技术,集成测试方法,集成测试指南集成测试是单元测试后软件测试过程的第二个层次。在此测试中,软件的单元或单个组件在组中进行测试。集成测试级别的重点是在集成组件或单元之间交互时暴露缺陷。 单元测试使用模块进行测试,这些模块在集成测试中进行组合和测试。该软件使用许多软件模块开发,这些软件模块由不同的编码器或程序员编码。集成测试的目标是检查所有模块之间通信的正确性。 集成测试背后的原因 虽然软件应用程序的所有模块已经在单元测试中进行了测