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

Grails/Gradle测试在非本地配置项上失败

温开畅
2023-03-14

使用gradle testrun/pass在本地(OSX)运行测试就可以了。在我们的CI(Ubuntu 16.04 LTS)机器上,我们遇到了应用程序上下文的问题

java.lang.IllegalStateException: Could not find ApplicationContext, configure Grails correctly first
        at grails.util.Holders.getApplicationContext(Holders.java:97)

检查版本显示它们在两台计算机上是相同的

/grailsw -version
| Grails Version: 3.2.8
| Groovy Version: 2.4.7
| JVM Version: 1.8.0_131


./gradlew -version
Gradle 3.5
Build time:   2017-04-10 13:37:25 UTC
Revision:     b762622a185d59ce0cfc9cbc6ab5dd22469e18a6
Groovy:       2.4.10
Ant:          Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM:          1.8.0_131 (Oracle Corporation 25.131-b11)
OS:           Linux 3.13.0-100-generic amd64`

我还需要调查其他的依赖关系吗?

共有1个答案

孟英锐
2023-03-14

我相信这是因为你是如何开始你的测试的。请使用本地Gradle包装器,而不是安装在机器上的版本,以确保这两个版本之间的一致性--在这里您可以找到更多信息。

因此,基本上不是运行gradle test而是使用./gradlew test运行它

 类似资料:
  • 我有一个有三种不同构建类型的项目:debug、beta和Release。我的测试包总是为调试构建而创建的,但是QA使用的是beta构建,我们希望QA在他们大量的设备上运行这些测试。 我试图为QA创建一个测试apk,该apk由与beta构建相同的密钥签名。翻阅Android-Gradle文档,我没有看到任何东西告诉我不能这样做,但我没有看到任何配置它的东西。我是否可以配置在组装测试APK时使用的密钥

  • 我无法在浏览器堆栈上运行本地测试(例如http://localhost:3000)。我正在使用LinuxMint 18.3 Sylvia x64。浏览器Chromium。浏览器的扩展程序(应用程序)已安装。 屏幕截图显示没有连接。http://joxi.ru/Y2LJBv0H9MBv8r 复选框已选中。http://joxi.ru/1A5PvVpCnzMww2 我试过这个手册https://www

  • 我不知道为什么,我的spring boot测试在eclipse中以junit形式运行时成功了,但当我执行以下命令时失败了: 这是我的建筑。格雷德尔: 运行gradle命令后,由于各种原因,我的所有测试都失败了,主要原因是无法创建bean并将它们自动连接到测试类。 下面是一个测试示例: 这就是构建/测试失败的原因: 我很感激能得到的帮助,我已经在这件事上耽搁了好几个小时了。 更新这是我的gradle

  • 我想写一个集成测试,测试控制器的响应,只返回一个映射。通常,对于单元测试,这是按如下方式进行的 在集成测试中,这对我不起作用。还有别的方法吗? 问候语

  • 我如何在我的Grails Spock测试中实现Groovy的新特性?每次我尝试,我都会得到一个看起来像这样的堆栈跟踪。Groovy路径是否有一些我可能不知道的限制? JDK 版本: Groovy Verison: Grails版本: 简化代码: } 堆栈跟踪:

  • 问题内容: 我想在jboss上使用gradle进行selenium测试,并且能够进行所需的配置,并且希望与社区共享。 问题答案: 解决方法如下: gradle.build: 您需要手动启动jboss服务器,然后使用命令 gradlew clean selenium