`

【转】maven 自动化web应用集成测试

阅读更多

web应用集成测试的时候,各位还需要启动web容器,然后打开浏览器,输入ulr,然后看到浏览器的输出吗?

下面我们用maven做到自动化!

 

 

我们利用maven的生命周期和jetty插件来实现。

 

 

下面描述下做的自动化web集成测试实现的原理。

1,在生命周期pre-integration-test启动jetty容器

2,在生命周期integration-test中测试我们写的***IT.java类

3,在post-integration-test shutdow jetty容器。

在pom.xml中加入代码如下:

<profiles> 
        <profile> 
            <id>ittest</id> 
            <build> 
                <plugins> 
                    <plugin> 
                        <groupId>org.apache.maven.plugins</groupId> 
                        <artifactId>maven-surefire-plugin</artifactId> 
                        <executions> 
                            <execution> 
                                <id>run-integration-test</id> 
                                <phase>integration-test</phase> 
                                <goals> 
                                    <goal>test</goal> 
                                </goals> 
                                <configuration> 
                                    <includes> 
                                        <include>**/*IT.java</include> 
                                    </includes> 
                                </configuration> 
                            </execution> 
                        </executions> 
                    </plugin> 
                    <plugin> 
                        <groupId>org.mortbay.jetty</groupId> 
                        <artifactId>maven-jetty-plugin</artifactId> 
                        <version>6.1.26</version> 
                        <configuration> 
                            <contextPath>/</contextPath> 
                            <stopPort>9966</stopPort> 
                            <stopKey>stop-jetty-for-it</stopKey> 
                            <connectors> 
                                <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> 
                                    <port>6211</port> 
                                </connector> 
                            </connectors> 
                        </configuration> 

                        <executions> 
                            <execution> 
                                <id>start-it-jetty</id> 
                                <phase>pre-integration-test</phase> 
                                <goals> 
                                    <goal>run</goal> 
                                </goals> 
                                <configuration> 
                                    <daemon>true</daemon> 
                                </configuration> 
                            </execution> 
                            <execution> 
                                <id>stop-it-jetty</id> 
                                <phase>post-integration-test</phase> 
                                <goals> 
                                    <goal>stop</goal> 
                                </goals> 
                            </execution> 
                        </executions> 
                    </plugin> 
                </plugins> 
            </build> 
        </profile> 
    </profiles>

 然后就可以编写测试用例了

 

 步骤如下:

1,定义一个以此命名的****IT的测试类(integration test缩写), 在里面华丽的写好你的测试逻辑。

再此不举例了,主要一个思路可以用httpclint来实现里面的测试代码。 

2,然后 执行 mvn clean post-integration-test -Pittest

好了 就可以看到我们测试用例是否通过。

建议:以上的代码可以加入到父类的pom中,以后继承此父pom后,只需要按以上2步,就可以做到web应用测试自动化了。
分享到:
评论

相关推荐

    Jmeter+Jenkins+maven接口自动化集成

    2. Web 应用程序测试:Jmeter+Jenkins+maven 接口自动化集成测试框架可以应用于 Web 应用程序测试,自动化测试和报告生成。 3. API 测试:Jmeter+Jenkins+maven 接口自动化集成测试框架可以应用于 API 测试,自动化...

    Jmeter+Jenkins+maven接口自动化集成.rar

    在这个项目中,我们将利用JMeter、Jenkins和Maven三个强大的工具进行接口自动化集成,实现持续集成和自动化测试。 **JMeter** 是一个开源的性能测试工具,主要适用于Web应用的压力和负载测试,但也可以用于接口测试...

    使用Maven开发Java Web应用

    2. **持续集成**:与Jenkins、Travis CI等持续集成工具配合,实现自动化构建和测试。 总结: Maven作为Java Web开发的重要工具,极大地提高了开发效率和项目管理的规范性。通过正确配置Nexus和Maven,可以有效地...

    java+selenium+maven+testng自动化测试框架实例(实际项目)

    Java+Selenium+Maven+TestNG自动化测试框架是现代软件开发中的一个重要组成部分,尤其是在Web应用程序的质量保证阶段。这个实例项目展示了如何将这四个强大的工具集成为一套完整的自动化测试解决方案。 **Java**: ...

    Maven多模块web应用实例

    9. **持续集成(CI/CD)**:在实际开发中,Maven与持续集成工具(如Jenkins、GitLab CI/CD)配合使用,可以实现自动化构建、测试和部署,提高开发效率和产品质量。 10. **最佳实践(Best Practices)**:保持模块间的低...

    chm版本Maven教程

    Maven自动化部署 Maven Web应用 Eclispe IDE集成Maven NetBeans IDE集成Maven Eclipse构建Maven项目 转换基于Maven的Java项目支持Eclipse IDE 转换基于Maven的Web应用程序支持Eclipse IDE 使用Maven模板创建项目 ...

    Maven实践-使用Maven开发Web应用

    除了基本的构建功能,Maven还可以集成持续集成工具,如Jenkins或GitLab CI/CD,实现自动化构建和测试。这在大型项目中尤为重要,可以确保代码的质量和稳定性。 总的来说,Maven通过其强大的依赖管理和构建能力,为...

    maven工程在tomcat服务器上的自动化部署

    标题中的“maven工程在tomcat服务器上的自动化部署”指的是使用Maven构建工具与Tomcat应用服务器相结合,实现Java Web项目自动部署的过程。这个过程旨在提高开发效率,减少手动部署的繁琐步骤,使得每次代码更新后都...

    maven 初始化webapp

    3. **测试**:使用Maven的Surefire插件进行单元测试,Failsafe插件进行集成测试。 4. **打包**:Maven可以将Web应用打包成WAR文件,这是Java EE服务器可部署的格式。 5. **部署**:配置Maven的`deploy`插件,将WAR...

    hudson+maven+svn自动化部署

    自动化部署的核心在于构建一个稳定且高效的持续集成/持续部署(CI/CD)环境。为了实现这一目标,通常需要以下几项关键技术组件: 1. **JDK (Java Development Kit)**: - **作用**: JDK 是 Java 开发的基础,提供了...

    maven管理的web项目

    在Java Web开发中,Maven是一个强大的构建工具,它通过自动化构建过程,简化了项目的管理。Maven基于项目对象模型(Project Object Model,POM),能够处理编译、测试、文档生成、依赖管理和项目部署等一系列任务。...

    使用springmvc、hibernate、maven开发的web实例项目。

    Spring MVC、Hibernate 和 Maven 是Java Web开发中的三个关键框架,它们各自在应用程序的不同层面发挥着重要作用。本项目是一个综合性的实例,将这三个框架整合在一起,为开发者提供了一个完整的Web应用程序开发环境...

    持续集成与自动化测试

    在一个大型Web项目中,测试人员将稳定的自动化脚本集成到持续集成中。当开发人员意外修改了一个已验证的功能时,自动化测试会立即执行并发现错误,从而及时防止问题进入生产环境。 **实际操作步骤** 1. 使用...

    Spring maven web java

    在实际开发流程中,这可能包括单元测试、集成测试和性能测试,确保应用的质量和稳定性。Spring框架提供了JUnit和Mockito等工具的集成,方便进行测试驱动开发(Test-Driven Development, TDD)。 总的来说,"Spring ...

    基于eclipse-maven的自动化测试环境配置大学论文.doc

    本文档旨在讲解如何基于Eclipse和Maven构建的环境中进行自动化测试环境配置,特别是单元测试和集成测试。下面是详细的知识点总结: 一、 Maven 配置 Maven是Java项目的构建和管理工具,它可以帮助开发者更好地管理...

    Maven account-web例子

    在Java开发中,Maven是一个强大的项目管理和依赖管理工具,它可以帮助开发者自动化构建过程,管理项目的生命周期,并解决库依赖关系。这个例子可能包含了创建一个简单的Web应用,如用户账户管理系统的过程。 【描述...

    spring-boot-maven的web完整项目框架

    以上就是 "Spring Boot Maven Web 完整项目框架" 的核心内容,涵盖 Spring Boot 的自动化配置、Maven 的依赖管理和构建功能,以及 Web 开发的相关知识点。通过这个项目,你可以快速搭建一个功能完善的 Web 应用,并...

    Java项目包 Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署

    在自动化部署中,Maven 负责编译源代码、运行测试、打包应用为可部署的JAR或WAR文件。 3. **Gitlab**:Gitlab 是一个用于版本控制和协作的代码托管平台,支持Git仓库管理和持续集成/持续部署(CI/CD)。在这里,...

    springMVC+hibernate maven空框架

    结合 Maven 进行项目管理,可以构建出高效、模块化且易于维护的 Web 应用。 1. **Spring MVC 框架** - **概念**:Spring MVC 是 Spring 框架的一个模块,负责处理 HTTP 请求并呈现响应。它遵循 MVC 设计模式,将...

    基于maven+spring+spring mvc+mybatis 框架web项目

    它通过定义项目的元数据(如依赖关系、构建过程等)来自动化构建过程,使得开发者可以专注于编写代码,而无需过多关注构建和管理依赖的复杂性。在本项目中,Maven负责管理项目构建、依赖关系和执行生命周期阶段,...

Global site tag (gtag.js) - Google Analytics