黑马程序员——接口测试——day05——Request库、Cookie、Session、UnitTest框架

目录:

  1. Requests库
    1. Requests库安装和简介
    2. 设置http请求语法
    3. 应用案例
      1. 案例1
      2. 案例2
      3. 案例3
      4. 案例4
    4. Cookie
      1. Cookie简介
      2. Cookie+Session认证方式
      3. 案例5-看演示,此代码不需实现
    5. Session
      1. Session简介
      2. Session自动管理Cookie
      3. 案例6
    6. 面试题Cookie和Session区别
    7. 获取指定响应数据
  2. UnitTest框架
    1. UnitTest框架回顾
      1. TestCase
      2. Fixture
      3. TestSuite
      4. TestRunner
    2. ihrm案例
      1. 登录成功
      2. 账号、密码错误

Requests库

Requests库安装和简介

简介:

  • Requests库是Python编写的,基于urllib的HTTP库,使用方便。

安装:

 

查验:

 

 

设置http请求语法

 

应用案例
案例1

案例2
  • 【带表单数据的post请求】使用Requests库,完成tpshop商城登录接口调用。返回“验证码错误"即可。

 

案例3

案例4

Cookie
Cookie简介
  • 简介:工程师针对 http协议是无连接、无状态特性,设计的一种技术。可以在浏览器端存储用户的信息。
  • 特性:
    • cookie 用于存储用户临时的不敏感信息。
    • cookie位于浏览器(客户端)端。默认大小4k (可以调整)
    • cookie 中的数据,可以随意被访问,没有安全性可言。
    • cookie中存储的数据类型,受浏览器限制。
Cookie+Session认证方式

在计算机中,认证用户身份的方式有多种!

  • 课程中接触2种:. ihrm项目:token认证。
  • tpshop项目:cookie+Session认证。

 

案例5-看演示,此代码不需实现

 

Session
Session简介
  • 简介:也叫会话。通常出现在网络通信中,从客户端借助访问终端登录上服务器,直到退出登录所产生的通信数据,保存在会话中。
  • 特性:
    • Session 用于存储用户的信息。
    • Session位于服务端。大小直接使用服务器存储空间
    • Session 中的数据,不能随意被访问,安全性较高。
    • Session 中存储的数据类型,受服务器影响,几乎能支持所有的数据类型。
Session自动管理Cookie
  • 因为Cookie中的数据,都是Session传递的。因此,Session可以直接自动管理cookie
案例6

 

面试题Cookie和Session区别

1.数据存储位置:

  • cookie存储在浏览器;session存储在服务器。

2.安全性:

  • cookie中的数据可以随意获取,没有安全性可言。Session的数据多为加密存储,安全较高!

3.数据类型:

  • cookie支持的数据类型受浏览器限制,较少;Session直接使用服务器存储,支持所有数据类型

4.大小:

  • cookie大小默认4k; Session大小约为服务器存储空间大小
获取指定响应数据

常用:

  • 获取URL: resp.url
  • 获取响应状态码: resp.status_code
  • 获取Cookie: resp.cookies
  • 获取响应头: resp.headers
  • 获取响应体:
  • 文本格式: resp.text
  • json格式: resp.json()

 

UnitTest框架

UnitTest是开发人员用来实现“单元测试”的框架。测试工程师,可以在自动化“测试执行”时使用。

使用UnitTest的好处:

  1. 方便管理、维护测试用例。
  2. 提供丰富的断言方法。
  3. 生成测试报告。(需要插件HTMLTestReport)
UnitTest框架回顾
TestCase

Fixture

TestSuite

TestRunner

示例:测试类 

 

 

ihrm案例
登录成功

 

 

断言方法:

 

账号、密码错误

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/709753.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Codeforces Round 929 (Div. 3)

A. 全部负数处理到前面,全部都能变成正数 // Problem: A. Turtle Puzzle: Rearrange and Negate // Contest: Codeforces - Codeforces Round 929 (Div. 3) // URL: https://codeforces.com/contest/1933/problem/A // Memory Limit: 256 MB // Time Limit: 2000 …

300分钟吃透分布式缓存(拉钩教育总结)

开篇寄语 开篇寄语:缓存,你真的用对了吗? 你好,我是你的缓存老师陈波,可能大家对我的网名 fishermen 会更熟悉。 我是资深老码农一枚,经历了新浪微博从起步到当前月活数亿用户的大型互联网系统的技术演进…

Linux|centos7|yum和编译安装ImageMagick记录

一, yum安装imagemagick imagemagick这个软件是图像文件的处理神器,可以文字转图像以及图像的剪辑等等工作,也是配合人工智能工程的不可或缺的工具,具体的用处和特点就不在这里废话了,有兴趣的百度就行了 本次是在…

SpringBoot底层原理

SpringBoot底层原理 一 配置优先级 1.配置方式 Springboot中支持三种配置方式,分别为: application.propertiesapplication.ymlapplication.yaml 2.配置优先级 当存在多份配置文件时,配置文件会按照它们的优先级生效。 优先级从高到底…

Linux中df和du命令

当涉及到在Linux系统中管理磁盘空间时,df和du命令是非常有用的工具。除了基本用法外,它们还具有一些高级用法,可以提供更详细和定制化的磁盘信息。下面是Linux中df和du命令的十个常用的高级用法,附带相应的代码和输出。 df -i - 显…

欧盟网络安全产业分析

文章目录 前言一、欧盟网络安全战略历程二、欧盟网络安全政策法规2.1 《电子识别和信任服务条例》2.2 《支付服务指令(第二版)》2.3 NIS 指令系列三.欧盟主要的网络安全机构3.1 ENISA3.2 欧盟委员会3.3 欧洲数据保护委员会3.4 欧盟成员国自设的网络安全机构四、欧盟网络安全…

蓝桥杯-灌溉

参考了大佬的解题思路&#xff0c;先遍历一次花园&#xff0c;找到所有的水源坐标&#xff0c;把它们存入 “水源坐标清单” 数组内&#xff0c;再读取数组里的水源坐标进行扩散。 #include <iostream> using namespace std; int main() {int n,m,t,r,c,k,ans0,list_i0;…

c# aes加密解密私钥公钥通钥

using System.Security.Cryptography; using System.Text; namespace EncryptTest { internal class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); string 密 EncryptAESBASE64("你…

(每日持续更新)jdk api之OutputStreamWriter基础、应用、实战

博主18年的互联网软件开发经验&#xff0c;从一名程序员小白逐步成为了一名架构师&#xff0c;我想通过平台将经验分享给大家&#xff0c;因此博主每天会在各个大牛网站点赞量超高的博客等寻找该技术栈的资料结合自己的经验&#xff0c;晚上进行用心精简、整理、总结、定稿&…

c++ for 循环语句

循环语句 在C中&#xff0c;有几种循环语句可用于重复执行一段代码&#xff0c;直到满足指定条件为止&#xff0c;主要有 for 循环、while 循环、do-while 循环三种循环语句。三者区别&#xff1a; 循环类型特点for 循环1. 适用于已知循环次数的情况&#xff0c;循环次数事先…

教师资格证相关

文章目录&#xff1a; 一&#xff1a;考试时间 二&#xff1a;考试科目 三&#xff1a;相关网站 四&#xff1a;相关 一&#xff1a;考试时间 教资 笔试 面试笔试报名笔试考试笔试公布面试报名面试时间面试公布上半年1月14日3月12日4月15日4月…

推荐系统经典模型YouTubeDNN代码

文章目录 前言数据预处理部分模型训练预测部分总结与问答 前言 上一篇讲到过YouTubeDNN论文部分内容&#xff0c;但是没有代码部分。最近网上教学视频里看到一段关于YouTubeDNN召回算法的代码&#xff0c;现在我分享一下给大家参考看一下&#xff0c;并附上一些我对代码的理解…

一张图读懂人工智能

一、生成人工智能的概念和应用&#xff0c;以及如何使用大型语言模型进行聊天和创造原创内容。这项技术将会对人类和企业产生深远影响。 计算机获得学习、思考和交流的能力&#xff0c;被称为生成人工智能。生成人工智能可以立即获得人类所有知识的总和&#xff0c;并回答任何…

go语言基础 -- map的定义与使用

map的定义与使用 map声明基础语法map的基本使用map的遍历map切片map排序 map声明基础语法 // map的声明 var xxx_map map[key_type]value_typemap的key可以是基本数据类型&#xff0c;channel&#xff0c;接口&#xff0c;结构体&#xff0c;数组&#xff0c;但不能是slice&am…

leetcode刷题(剑指offer) 47.全排列Ⅱ

47.全排列Ⅱ 给定一个可包含重复数字的序列 nums &#xff0c;按任意顺序 返回所有不重复的全排列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,2] 输出&#xff1a; [[1,1,2],[1,2,1],[2,1,1]]示例 2&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[…

c#委托、lambda、事件

Lambda Lambda表达式是一种匿名函数&#xff0c;Lambda表达式通常以箭头“>”分隔左侧的输入和右侧的输出。 (parameter_list) > { statement_block } parameter_list 是由一个或多个参数组成的逗号分隔列表&#xff0c;每个参数都包括类型和名称&#xff0c;可以为空。…

综合实战(volume and Compose)

"让我&#xff0c;重获新生~" MySQL 灾难恢复 熟练掌握挂载卷的使用&#xff0c;将Mysql的业务数据存储在 外部。 实战思想: 使用 MySQL 5.7 的镜像创建容器并创建一个普通数据卷 "mysql-data"用来保存容器中产生的数据。我们需要容器连接到Mysql服务&a…

TeXiFy IDEA 编译后文献引用为 “[?]“

文章目录 1. 问题描述2. 原因分析3. 解决方案3.1 添加自动化脚本3.2 附录——配置一览表 1. 问题描述 在 IDEA 中使用 TeXiFy IDEA 编译后的文章文献引用是 [?] 2. 原因分析 根据网上教程所生成的目录结构如下&#xff1a; 报错日志&#xff1a; 根据 /out 目录结构&#x…

C++ | 使用正则表达式匹配特定形式的字符串

C | 使用正则表达式匹配特定形式的字符串 在 C 中&#xff0c;可以使用 <regex> 头文件提供的正则表达式库来对特定形式的字符串进行匹配操作。 常用的正则表达式模式语法 普通字符&#xff1a; 普通字符会按照其字面意义进行匹配&#xff0c;例如 a 会匹配字符 a。 转…

【vmware安装群晖】

vmware安装群晖 vmware安装群辉&#xff1a; vmware版本&#xff1a;17pro 下载链接&#xff0c; https://customerconnect.vmware.com/cn/downloads/details?downloadGroupWKST-1751-WIN&productId1376&rPId116859 激活码可自行搜索 教程&#xff1a; https://b…