java自动化测试框架第一篇-自动化框架搭建

自动化框架主要涉及基本的项目框架、测试框架、http框架以及其他一些第三方框架

一般的java项目均可选用spring框架,该套框架为几乎所有的应用场景提供了支持,并且包含非常丰富的第三方库集成。该框架提供了项目创建的ui工具来快速创建新项目,工具地址这里

也可以通过Interllij IDEA来创建新项目,该ide内部集成了该工具

1. 新建项目

打开Interllij IDEA工具,选择Create New Project


image.png

2. 基础配置

选择左侧列表的Spring Initializr,修改或使用默认配置并点击下一步,在该步骤中可以选择该项目使用哪一个版本的Project sdk(JDK)


image.png

3. 配置项目信息

包括项目的Group以及Artifact,这两项一般根据java项目统一规则或公司级规则设定,如果公司没有特殊规定,那么Group一般使用公司域名的反写形式(如果项目很多为了区分,该项也可以加上部门或某些特定前缀),Artifact则为项目名称
type可以选择maven或grade,一般的中小型项目使用maven即可
package为项目打包形式,非web项目一般选择jar格式
Java version为项目使用的java版本,该版本与上一步的Project SDK不需要一致
version、name、description、package根据实际情况修改,也可保持默认配置,最后点击下一步


image.png

4. 选择依赖库

在这一步中我们可以选择项目依赖的库,作为自动化测试项目,可以选择以下这些项
Developer Tools -> Lombok : 该库能够为类属性自动生成Getter与Setter
Developer Tools -> Spring Configuration Processor : 该库为spring框架提供加载自定义配置文件的功能
SQL -> Spring Data JPA : 该库为mysql提供了简单的访问api
SQL -> Spring Data JDBC : 该库提供了jdbc驱动库
SQL -> MyBatis Framework : MyBatis框架
SQL -> MySQL Driver : 该库提供了mysql驱动


image.png

5. 配置项目保存路径

点击下一步进入到最后一个步骤,这一步我们可以设置项目名称以及修改项目位置,最后点击完成


image.png

6. 安装以及添加依赖

进入项目后会自动进行maven依赖库下载,等待一会儿就行了。这时候我们只有基础的项目框架,我们需要的其他框架入TestNG以及Rest Assured框架需要我们自己添加到maven配置中,将以下代码添加到如图所示的位置

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

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-lang3</artifactId>
</dependency>

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-pool2</artifactId>
</dependency>

<dependency>
  <groupId>io.rest-assured</groupId>
  <artifactId>rest-assured</artifactId>
</dependency>

<dependency>
  <groupId>io.rest-assured</groupId>
  <artifactId>json-path</artifactId>
</dependency>
image.png

7. 用例创建流程

人力系统接口自动化测试框架.png

8. 结语

到此基本的依赖就添加完成了,实际开发中有其他依赖需要添加可以参考最后的添加依赖的这一步,最后附上项目的目录结构图及说明

// 目录结构说明
.
├── HELP.md
├── README.md
├── .mvn                                                        // Maven命令工具的保存位置,该目录由mvnw命令管理
├── pom.xml                                                     // 配置文件
├── src                                                         // 项目源代码目录
│   ├── main
│   │   ├── java
│   │   │   └── com-test-autotest
│   │   │                   ├── TestApplication.java             // Spring框架的项目主入口文件,一般不用管
│   │   │                   ├── api                             // api层,用来定义接口类型、请求url
│   │   │                   │   ├── Api.java                    // API请求接口定义
│   │   │                   │   ├── Base.java                   // API对象的基础抽象类
│   │   │                   │   ├── adjust
│   │   │                   │   │   ├── Add.java
│   │   │                   ├── constant                        // 枚举值
│   │   │                   │   └── enums
│   │   │                   │       ├── PostEnum.java           
│   │   │                   │       └── WarehousePostEnum.java
│   │   │                   ├── dao                             // mapper生成的文件存放于此
│   │   │                   │   ├── entities
│   │   │                   │   └── mapper
│   │   │                   ├── request                         // 请求参数对象
│   │   │                   │   ├── Base.java                   // Request对象的抽象类
│   │   │                   │   ├── Request.java                // API请求参数接口定义
│   │   │                   │   ├── adjust
│   │   │                   │   │   ├── AddBody.java
│   │   │                   └── utils                           // 工具层
│   │   │                       ├── AssertUtil.java             // 居于Testng Assert类二次封装,添加办法校验方式
│   │   │                       ├── CommonUtils.java            // 公共工具
│   │   │                       ├── DataFormatUtil.java         // 数据转换工具
│   │   │                       ├── DateUtil.java               // 线程安全的日期工具类
│   │   │                       ├── FileUtil.java               // 文件工具类
│   │   │                       └── RestAssuredUtil.java        // 接口请求工具封装
│   │   └── resources                                           // 资源文件目录
│   │       ├── application-b22.properties                      // 测试环境的配置 
│   │       ├── application-b32.properties                      // 测试环境的配置
│   │       ├── application-local.properties                    // 测试环境的配置
│   │       ├── application.properties                          // Spring框架主配置文件
│   │       ├── config-local.properties                         // 配置文件
│   │       ├── config-prod.properties
│   │       ├── generator                                       // mapper使用
│   │       │   ├── generator.properties
│   │       │   └── generatorConfig.xml
│   │       ├── logback.xml
│   │       └── mapper
│   └── test                                                    // 测试用例层              
│       └── java
│           └── com-mryx-autotest-lop
│                           ├── AutoTestCase.java
└── testNgXml
    └── All.xml
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。