美文网首页
Maven+TestNG+Rest Assured 接口自动化框

Maven+TestNG+Rest Assured 接口自动化框

作者: 爱sa笑的菇凉 | 来源:发表于2020-09-17 14:06 被阅读0次

本文会介绍如何搭建Maven+TestNG+Rest Assured 接口自动化框架,只是讲解搭建的过程。如果需要了解Rest Assured的更多信息,请参考Rest Assured的系列文章。

  1. Rest Assured (1) -- 请求信息设置
  2. Rest Assured (2) -- 响应信息验证

1.名词解释

1.1 Maven 和 TestNG是什么?
请参考:Java+Maven+TestNG - 创建项目篇

1.2 Rest Assured 是什么?
REST Assured是一套由 Java 实现的 REST API 的测试框架,可以直接编写代码向服务器端发起 HTTP 请求,并验证返回结果;它的语法非常简洁,是一种专为测试 REST API 而设计的 DSL。

  • REST Assured就是为了简化REST API 的测试和验证而设计的
  • 它支持发起POST,GET,PUT,DELETE,OPTIONS,PATCH和HEAD请求
  • 它除了可以指定请求参数之外,还可以指定请求头(header)、cookies、请求体(body)以及请求内容类型(content-type)等等
  • 它也可以用来验证和校对这些请求的响应信息

2.环境搭建

2.1 创建项目
IDEA创建一个Maven的项目,请参考:Java+Maven+TestNG - 创建项目篇

2.2 添加依赖
打开pom.xml文件,添加TestNG 和 REST Assured相关依赖

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

    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>7.1.0</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>java-hamcrest</artifactId>
      <version>2.0.0.0</version>
      <scope>test</scope>
    </dependency>

2.3 创建 testng.xml文件
在项目的根目录下创建一个testng.xml文件,testng来控制测试用例的执行。代码如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Points" parallel="tests" thread-count="1">
    <test name="Login">
        <classes>
            <class name="org.example.Demo"></class>
        </classes>
    </test>
</suite>

2.4 创建简单的测试用例
测试用例一般在src/test目录下创建,创建一个Java文件,编写一个Demo用例。注意创建好文件后,需要在类中静态导入两个库:

import static io.restassured.RestAssured.*;
import static org.hamcrest.Matchers.*;

以下是demo用例的代码:

package org.example;
import org.testng.annotations.*;
import static io.restassured.RestAssured.*;
import static org.hamcrest.Matchers.*;

public class demo {

    @Test
    public void getProfile(){
        given().log().all()
                .get("http://localhost:3001/api/profile")
                .then().log().all()
                .statusCode(200);
    }
}

2.5 执行用例
需要通过testng.xml文件来执行测试用例,所以邮件testng.xml 文件点击run,结果如下:

3.持续集成

将TestNG+Maven的项目如何在Jenkins和GoCD上集成,之前都有详细介绍过,请参考:
Java+Maven+TestNG+Jenkins - 部署篇Java+Maven+TestNG+GoCD - 部署篇

相关文章

网友评论

      本文标题:Maven+TestNG+Rest Assured 接口自动化框

      本文链接:https://www.haomeiwen.com/subject/rexjyktx.html