Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring maven多模块项目中的集成测试_Spring_Maven_Integration Testing_Cargo - Fatal编程技术网

Spring maven多模块项目中的集成测试

Spring maven多模块项目中的集成测试,spring,maven,integration-testing,cargo,Spring,Maven,Integration Testing,Cargo,我有一个多模块项目,现在我想添加集成测试,我想使用cargo插件启动tomcat并在那里部署我的人工制品,然后使用selenium进行端到端测试 我已经查看了当前构建和surefire单元测试的maven控制台输出,然后阅读了failsafe插件的maven文档。这看起来还可以,但似乎每个模块的生命周期都是如此,因为日志表明,在进入下一个模块之前,先对模块进行了测试,然后构建了模块 我理解正确吗 由于我的应用程序包含一个war,该war只是前端,然后连接到后端api应用程序,该应用程序是连接到数

我有一个多模块项目,现在我想添加集成测试,我想使用cargo插件启动tomcat并在那里部署我的人工制品,然后使用selenium进行端到端测试

我已经查看了当前构建和surefire单元测试的maven控制台输出,然后阅读了failsafe插件的maven文档。这看起来还可以,但似乎每个模块的生命周期都是如此,因为日志表明,在进入下一个模块之前,先对模块进行了测试,然后构建了模块

我理解正确吗

由于我的应用程序包含一个war,该war只是前端,然后连接到后端api应用程序,该应用程序是连接到数据库的rest api,因此我需要在集成测试阶段将两个war文件同时部署到cargo

有人知道怎么做吗,或者可以给我指一个在tomcat中对多个war文件进行集成测试的教程吗


谢谢

Maven插件生命周期如下:

  • 验证pom.xml
    • 初始化
  • 生成源
    • 过程源
  • 产生资源
    • 过程资源
  • 编撰
    • 进程类
  • 生成测试源
    • 过程测试源
  • 生成测试资源
    • 过程测试资源
  • 测试编译
    • 过程测试类
  • 试验
  • 准备包装
    • 包装
  • 预集成测试
  • 集成测试
  • 整合后测试
  • 核实
  • 安装
  • 部署
  • 可用于上述测试多个war文件的目的

    要将MockServer作为构建的一部分运行,请将以下插件添加到pom.xml中:

    <plugin>
        <groupId>org.mock-server</groupId>
        <artifactId>mockserver-maven-plugin</artifactId>
        <version>3.10.7</version>
        <configuration>
            <serverPort>1080</serverPort>
            <proxyPort>1090</proxyPort>
            <logLevel>DEBUG</logLevel>
            <initializationClass>org.mockserver.maven.ExampleInitializationClass</initializationClass>
        </configuration>
        <executions>
            <execution>
                <id>process-test-classes</id>
                <phase>process-test-classes</phase>
                <goals>
                    <goal>start</goal>
                </goals>
            </execution>
            <execution>
                <id>verify</id>
                <phase>verify</phase>
                <goals>
                    <goal>stop</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
    
    
    org.mock-server
    演示MVC集成

    参考资料


    看一看,好的,看起来与我的想法非常相似,但这是否适用于作为单独模块构建的两个war文件?是否只是添加更多可部署组件?您可以使用覆盖并将它们组合到单个war文件中。看一看。是否可以像您的示例那样,拥有一个集成测试模块本身,并在该模块中添加对届时将构建的两个人工制品的依赖项,然后使用多个可部署组件,并通过cargo将两者同时部署到tomcat?