持续集成 搭建自动化测试平台 (selenium+testng+maven+svn+Jenkins)

灵枢 · 2017年08月06日 · 最后由 皮皮 回复于 2020年06月19日 · 3083 次阅读

这是我在 csdn 写的一篇博客(http://blog.csdn.net/galen2016/article/details/76790591 ),现在贴到 TesterHome,介绍搭建自动化测试平台 (selenium+testng+maven+svn+Jenkins)

首先创建一个 Maven 项目

1、打开 eclipse,选择 File-new-Other
这里写图片描述

2、选择 Maven Project,点击 “next”
这里写图片描述

3、直接点击 “next”
这里写图片描述

4、在 Catalog 下拉选项中选择 Internal,然后选择 maven 模板:maven-archetype-quickstart,再点击 “next”
这里写图片描述

5、在 Group Id 文本框输入公司域名,Artifact Id 文本框输入项目名称,点击 “Finish”
这里写图片描述

6、创建好的项目如下图:
这里写图片描述

7、编辑 pom.xml,添加 tesng、selenium 依赖,添加 maven-surefire-plugin 插件,如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.zwy</groupId>
  <artifactId>AutoTestDemo</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>AutoTestDemo</name>
  <url>http://maven.apache.org</url>

  <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>2.53.1</version>
        </dependency>

        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.8.8</version>
        </dependency>

    </dependencies>

    <build>
        <defaultGoal>compile</defaultGoal>
        <sourceDirectory>src</sourceDirectory>
        <resources>
            <resource>
                <directory>src</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.12.4</version>
                <configuration>
                    <suiteXmlFiles>
                        <suiteXmlFile>testng.xml</suiteXmlFile>
                       <!--此处testng.xml即为要运行的testng.xml文件-->
                    </suiteXmlFiles>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

注意:maven-surefire-plugin 这个插件是让我们能够在构建 maven 项目时就运行测试用例,但要对 testng.xml 和测试类的目录有一定规则,后面会介绍

7、编写测试类,由于使用了 maven-surefire-plugin 这个插件来运行测试用例,所以测试类规则必须是以下三种:Test**Test,***TestCase,并且测试类必须放到 src/test/java 目录下面,如下图:
这里写图片描述

8、创建 testng.xml 文件,注意,由于使用了 maven-surefire-plugin 插件,testng.xml 一定要放在项目根目录下:

<?xml version="1.0" encoding="UTF-8"?>
<suite name="suite1"  preserve-order="true"> 
    <test name="baidutest">
        <classes>
            <class name="com.zwy.AutoTestDemo.TestBaiduDemo" />
        </classes>
    </test>
</suite>

最后的项目目录如下图:
这里写图片描述

9、编译运行项目,选中项目 - 右键-run as-Maven install:
这里写图片描述

运行结果如下:可以看到已经运行测试用例了
这里写图片描述

将项目同步到 svn

创建 svn 资源库

1、选中项目 - 右键-Team-Share Project
这里写图片描述

2、选中 SVN,点击 next
这里写图片描述

3、选择 “使用已有资源库位置”,你也可以新建一个资源库位置
这里写图片描述

4、选中使用项目名称作为文件夹名称,点击 finish,此时资源库创建完成。
这里写图片描述

提交代码到资源库

1、选中项目 - 右击-Team-提交
这里写图片描述

2、提交成功后在 svn 查看如下图:
这里写图片描述

搭建 Jenkins

Jenkins 的搭建请参考教程:http://blog.csdn.net/galen2016/article/details/53418708

Jenkins 搭建完成后要配置 JDK 和 Maven,以及 maven 插件,步骤如下:

1、进入全局设置页面:选中左上角的 Jenkins-点击下拉箭头 - 点击新建 - 点击 Global Tool Configuration
这里写图片描述

2、配置 JDK
这里写图片描述

3、配置 Maven
这里写图片描述

4、然后再进入插件管理页面,安装 Maven Integration plugin,已安装好的如下图:
这里写图片描述

在 Jenkins 上配置任务

1、在首页点击 “新建”,输入一个任务名,选择 “构建一个自由风格的软件项目”,点击 “保存”
这里写图片描述
2、进入设置页面,输入项目 svn 地址
这里写图片描述

3、点击 “add”,输入 svn 用户名密码后保存
这里写图片描述

4、然后点击 “add” 左边的下拉箭头,选择刚刚添加的 svn 用户
这里写图片描述

5、构建设置:Maven Version 选择 maven,Goals 填写 clean install,POM 文本框填写 pom.xml,点击 “保存”
这里写图片描述

运行测试

1、点击立即构建
这里写图片描述

2、点击正在构建的项目 - 再点击 “ Console Output”,查看测试运行结果:
这里写图片描述

3、来个构建的动态图:
这里写图片描述

总结

1、搭建这个自动化测试平台肯定会遇到各种错的,不要着急,一步步解决
2、我遇到最大困难就是构建成功却没有运行测试用例,搞了一天才解决,最后发现是有三个地方不对,一是测试用例没有放到 src/test/java 目录下,二是测试类没有按规则命名,三是因为 testng.xml 没有放到项目根目录下面

共收到 5 条回复 时间 点赞

排版差那么点。。

恒温 回复

多谢指出,已重排

赞一个,收藏了

好详细

你这是自动测试框架

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册