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

如何使用Gradle测试服务器?

钮安歌
2023-03-14

我有一个服务器,用Java编写的,那是我的应用程序,我想在上面运行一些测试。我正在使用gradle来管理依赖项和构建任务等,所以我也想在这方面使用它。我需要启动服务器,然后运行我的单元测试,这会对它发出一堆HTTP请求,然后在测试完成后,理想情况下甚至关闭服务器。所以我尝试在build.gradle中添加test.dependson(jettyRunWar)(jettyRunWar是运行服务器的工具),但我想这太简单了,因为gradle test从不从jettyRunWar返回以继续测试。我可以把它连接起来,这样gradle就会启动服务器,然后运行测试吗?

共有1个答案

姬雪松
2023-03-14

是啊!你得加上

jettyRunWar {
    daemon = true
}

到你的大楼去。格雷德尔。如果你想在最后关掉服务器,你还得加上这个:

stopPort = 1234
stopKey = 'stopKey'
// gradle is luser. Full story (and code copied from): https://issues.gradle.org/browse/GRADLE-2263
import org.gradle.api.plugins.jetty.internal.Monitor
[jettyRun, jettyRunWar]*.doLast {
    /**
     * THIS IS A WORKAROUND! THE CURRENT VERSION OF THIS TASK DOESN'T START A WATCHER IN DAEMON MODE
     *
     * If starting the monitor fails, it may be because the jetty task was updated to fix this issue
     * When that happens, we shouldn't need the custom task any more
     *
     * Copied From: AbstractJettyRunTask
     */
    if (getStopPort() != null && getStopPort() > 0 && getStopKey() != null) {
        Monitor monitor = new Monitor(getStopPort(), getStopKey(), server.getProxiedObject());
        monitor.start();
    }
}

确保你包含了关于“Gradle is Luser”的评论。

 类似资料:
  • 问题内容: 我对Java单元测试非常陌生,听说Mockito框架对于测试非常有用。 我已经开发了一个REST Server(CRUD方法),现在我想对其进行测试,但是我不知道如何? 我什至不知道该测试程序应该如何开始。我的服务器应该在本地主机上运行,​​然后在该URL上进行调用(例如,本地主机:8888)? 这是我到目前为止尝试过的方法,但是我很确定这不是正确的方法。 这是方法的代码。 在此测试用

  • 问题内容: 我只想在不引导Angular的情况下测试服务。 我看了一些例子和教程,但是我什么也不会去。 我只有三个文件: myService.js:在这里定义AngularJS服务 test_myService.js:在这里定义服务的Jasmine测试。 specRunner.html:一个具有常规茉莉花配置的HTML文件,在其中导入了前两个其他文件以及茉莉花,Angularjs和angular-

  • 问题内容: 在maven中,我可以为依赖关系解析指定“类型”。我正试图拉下一个。如何使用Gradle做到这一点? 我已经尝试过使用下面的Gradle Dependency,但这并没有降低。 Maven依赖关系: 详细信息: Gradle 1.7 我正在尝试从 Maven Central 下拉“ hbase-0.94.2-tests.jar” 问题答案: Gradle没有Maven的直接等效项,但应

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

  • 问题内容: 目前,我有以下 build.gradle 文件: 这 的build.gradle 文件是我的仓库 在这里 。我所有的主文件都在 src / model /中 ,它们各自的测试在 test / model中 。 如何正确添加JUnit 4 依赖项 ,然后在 测试/模型 文件夹中运行那些测试? 问题答案: 如何正确添加junit 4依赖关系? 假设您要针对标准Maven(或等效版本)存储库

  • 当前我有以下build.gradle文件: 此build.gradle文件用于我的存储库。我的所有主文件都在src/model/中,它们各自的测试都在test/model中。