RestAssured接口自动化从入门到框架搭建-16-baseURI和basePath

本文主要是介绍RestAssured接口自动化从入门到框架搭建-16-baseURI和basePath,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这篇主要来学习我们这个系列第3篇阅读RestAssured.java中代码中提到的baseURI和basePath。

 

1.场景

首先我们学习过HTTP协议,我们已经知道什么是URI。我们先来看一个接口测试场景。

浏览器打开http://jsonplaceholder.typicode.com/

我要测试上面四个红圈内的接口,其中四个接口都是从/posts, 这个路径就是我们的basePath,baseURI就是http://jsonplaceholder.typicode.com

 

2.baseURI和basePath代码举例

直接来看代码吧

package demo;import static io.restassured.RestAssured.*;import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;import io.restassured.RestAssured;public class BaseUrlPath {@BeforeClasspublic void setup() {RestAssured.baseURI = "http://jsonplaceholder.typicode.com";RestAssured.port = 80;RestAssured.basePath = "/posts";}/*** 在BeforeClass中提前设置好了basePath 和baseURI* 这里只需要填写end points就行*/@Testpublic void test1() {given().get("/1").then().statusCode(200).log().all();}@Testpublic void test2() {given().get("/1/comments").then().statusCode(200).log().body();}@Testpublic void test3() {given().get("?userId=1").then().statusCode(200).log().headers();}
}

上面在BeforeClass中,我们提前设置好了baseURI和basePath, 还有端口号,前面一篇我们还在奇怪为什么默认是8080端口,如果这里你不指定端口是80,RestAssured默认这个port=8080.

下面三个测试用例,这样写的用例就相等简洁一些,而且在BeforeClass中的port basePath baseURI,其实我们都可以提取到配置文件,这一点在接下来我们框架式设计中要利用到。

 

3.其他设置

除了上面basePath, baseURI和port,在Rest Assured还有一些其他的设置选项,可以提取指定。

3.1 基本认证(登录认证)

RestAssured.authentication = basic("username", "password");

3.2 过滤器

这个了解一下,在servlet中,我学习过过滤器Filter的基本使用,主要就是拦截的,这里了解一下就好。

//RestAssured.filters() = // 一个list对象

3.3 RequestSpecification 和ResponseSpecification

这个我们前面一篇学习过

//RestAssured.requestSpecification = 默认requestspecification
//RestAssured.responseSpecification = 默认responseSepecification

3.4 默认解析器和url是否编码

RestAssured.urlEncodingEnabled = true;
RestAssured.defaultParser = Parser.JSON;

3.5 reset方法

RestAssured.reset();

使用这个方法之后,上面设置都恢复成默认设置,basePath默认是空,port默认是8080,baseURI默认是localhost,这个reset()方法在框架有些地方是可以使用的。

这篇关于RestAssured接口自动化从入门到框架搭建-16-baseURI和basePath的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1050934

相关文章

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

Python Invoke自动化任务库的使用

《PythonInvoke自动化任务库的使用》Invoke是一个强大的Python库,用于编写自动化脚本,本文就来介绍一下PythonInvoke自动化任务库的使用,具有一定的参考价值,感兴趣的可以... 目录什么是 Invoke?如何安装 Invoke?Invoke 基础1. 运行测试2. 构建文档3.

Windows自动化Python pyautogui RPA操作实现

《Windows自动化PythonpyautoguiRPA操作实现》本文详细介绍了使用Python的pyautogui库进行Windows自动化操作的实现方法,文中通过示例代码介绍的非常详细,对大... 目录依赖包睡眠:鼠标事件:杀死进程:获取所有窗口的名称:显示窗口:根据图片找元素:输入文字:打开应用:依

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin