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

相关文章

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Java List 使用举例(从入门到精通)

《JavaList使用举例(从入门到精通)》本文系统讲解JavaList,涵盖基础概念、核心特性、常用实现(如ArrayList、LinkedList)及性能对比,介绍创建、操作、遍历方法,结合实... 目录一、List 基础概念1.1 什么是 List?1.2 List 的核心特性1.3 List 家族成