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

具有集成测试的Spring引导应用程序的Jenkins作业

景翰音
2023-03-14

以下是我的场景。

我有我的应用程序,它构建在带有嵌入式tomcat服务器的Spring Boot上。在我的应用程序中,我有单元测试和集成测试。

首先,我想将我的应用程序构建为一个maven包(jar ),它将覆盖所有的单元测试,然后下一步是将jar文件作为spring boot application运行((java -jar myapplication.jar ),它将启动tomcat服务器。最后一步,我想在正在运行的spring boot应用程序上运行我的集成测试。

在詹金斯实现这一点的最佳解决方案是什么。

>

  • 是否有可能有一个 Jenkins 作业并实现上述场景?(就像在构建后步骤中,使用命令将生成的 jar 作为应用程序运行并对其运行集成测试)

    Else将在Jenkins中创建3个作业(一个用于maven包,第二个用于部署生成的jar文件并运行应用程序,第三个用于在运行的应用程序上运行集成测试。

    请提出最佳解决方案。

    提前感谢。

    巴拉。

  • 共有1个答案

    常智勇
    2023-03-14

    这应该会有所帮助(如果您使用maven构建项目)。一般的想法是使用您的构建工具,而不是在一个Jenkins作业中管理整个过程本身。

    <plugin>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-maven-plugin</artifactId>
       <executions>
          <execution>
             <id>pre-integration-test</id>
             <goals>
                <goal>start</goal>
             </goals>
          </execution>
          <execution>
             <id>post-integration-test</id>
             <goals>
                <goal>stop</goal>
             </goals>
          </execution>
       </executions>
    </plugin>
    
     类似资料:
    • 设置是,我希望有一个正在运行的应用程序,然后使用@Value注释中的URL运行集成测试。我的测试类使用Rest Assured并如下所示: 我的build.gradle文件如下所示:

    • 这是一个与工作相关的web应用程序,使用Spring Boot 1.5.18,Cucumber 4.2.2。 目录结构是src/main/java,用于我所有的java类和包,src/main/resources以及application.properties和其他一些目录结构,一个具有环境日志和安全属性的根级文件夹。然后,我有src/test/java和我的cucumber代码,还有src/te

    • 我不明白在springboot应用程序中如何正确地编写websocket测试用例。我有一个实现的类,我在中添加了这个处理程序: 但是当我写下下面的测试用例时,我得到了一个例外: 异常::发起WebSocket连接的HTTP请求失败 如果我将(结尾斜杠)它可以工作,但不工作。 我做错了什么?

    • 我正在学习JUnit5和测试用例。我使用的是spring boot version'2.2.6.Release和JUnit5,在我的应用程序中,我有一个基于属性文件中的布尔标志进行处理的方法。 \src\main\resources\application.properties 数据库连接属性用于创建数据库连接 ControllerTest.java 默认情况下,该标志为false,因此每次测试用

    • 我在spring靴子上有一个 如果我对已启动的应用程序启动测试-测试确定如果我尝试只启动它,则会出现连接拒绝错误。 My Application.Properties对于单一启动和测试是相同的,并且位于resources和TestResources中。 application.class是