day01(无用)
第一讲:
1,基本理论知识
第一天内容:抽象、枯燥。
2,工具的操作:
三个工具:
2个发包工具:
Jmeter、PostMan
1个抓包工具:
Fiddler
3,安全测试的内容:
初级,工具的使用:AppScan
1,基本理论知识
2,Jmeter
项目
3,抓包:fiddler
4,Postman
5,安全测试
6,阶段考核
一天的内容:
1,接口相关的理论知识
1,接口的概念、功能、分类
2,接口测试的概念、原理、流程、方法
接口测试:
3,RestFUl风格架构的一些基本知识
2,web工作基本流程的理论知识
1,请求响应的消息结构(重点、理解、记住、必考)
2,http工作的基本流程(了解、理解、熟悉)
1,接口的概念:(重点、理解)
接口:连接的端口
连接:两个系统连接的端口。交互:一个系统要调用另一个系统的功能或者服务,就需要访问另一个系统。
类比:
饮水思源
古代:喝水,打井----井给我们提供水这种服务(功能)
打井:我在11号楼,11号楼打个井(软件)。
望京。就地打个井。
天灾人祸:地震---离开这个地方。人祸:战争。
喝水:背井离乡。
发展到现代,我们有一个解决方案:自来水系统:水管、泵等等。
两个系统:井,人
人要访问(调用)井的供水(功能),需要连接:端口:
水龙头:
人和井之间的接口
Water Human Interface:WHI--高大上
API:
MHI:Machine Human Interface:人机交互界面
人要进教室 人和教室要形成一个通道:门 人调用门的打开功能:门把手
人要使用电力:插座:EHI
USB:设备(手机、U盘、移动硬盘、鼠标、键盘)和电脑之间的接口。
接口的要素:
水龙头:
方法 参数名 参数值 返回值(功能):返回的参数
逆时针旋转把手 角度 5 少量的水 温度 速度
逆时针旋转把手 角度 90 大量的水
顺时针旋转把手 角度 90 停止供水
接口的三要素:方法、参数、返回值。
函数名adder(参数)(x,y)
a= x + 2
b= y*3
return a+b
x.py
函数名adder(参数)(x,y)
a= x + 2
b= y*3
return a+b
10行代码
adder(1,5)
10行代码
接口的概念、要素。
什么是接口:
为什么要有接口:
井:在哪里,就只能在哪里用。
1,通用性:
经济性:
前后端分离:
前端是一个系统
后端是一个系统
单机版的应用程序:使用者的计算机和提供者的计算机分离。
前后端分离的好处:
高效:使用者在哪里用水,不需要关注井打在那里。
分工明确
天气预报:
两种解决方案:
1,
QQ,要自己开发一个天气预报系统
支付宝,自己开发一个。
2,天气预报只有一个:国家开发的。
qq,就在自己的界面调用国家开发的天气预报系统的接口
支付宝,也调用这个接口。
经济:提高经济性,降低成本。避免重复制造轮子。
别人已经写过的实现同样功能的代码。
微积分的代码:封装到一个函数,类中。
语言:库函数。调用接口--函数名,类名,方法。
通用:
资源
例子:天气预报接口:聚合数据。
接口功能
1,高效
2,经济
3,通用
接口分类:
1,定义分:
内部接口:
外部接口:
微信调用聚合数据的天气预报
外卖调用支付宝的支付接口
2,硬件和软件接口
3,软件接口:
GUI:
dos:cmd
4,协议接口:联网
接口调用要遵循一定的网络协议:ftp http tcp等等。
HTTP接口:
HTTP:Hyper(超级) Text(文本)Transfer(传输)Protocol(协议)
协议:约定、规定。
接口测试的大部分工作都是在:协议接口--HTTP接口
OSI七层模型:HTTP协议工作在应用层:第七层
IP层
接口的分类:
换一个角度来看接口:
把接口看做是一个黑盒。
方法 参数名 参数值 返回值(功能):返回的参数
逆时针旋转把手 角度 5 少量的水 温度 速度
逆时针旋转把手 角度 90 大量的水
顺时针旋转把手 角度 90 停止供水
方法、参数名:参数值是对接口(水龙头)进行的一个输入的操作:
返回值:是接口(水龙头)对调用者(人)一个输出的操作
输入数据--接口--输出数据
输入:方法、参数(名、值)----数据
输出:返回值(参数名和值)----数据
接口的本质:进行数据传递的规范
1,进行数据传递的通道
2,遵循一定的规定,约定,规范----水龙头(接口)的设计者
接口的设计者:开发者(架构师、技术负责人、接口开发者)
接口是由接口设计者规定的,
什么是数据传递的规范:
规定什么样的输入,会返回什么样的输出
输入:请求
输出:响应
方法:请求方式
参数:请求参数和响应的参数
返回值:响应
规范是什么样子的:从哪里知道---接口文档
什么是接口文档:定义接口要素的文档。
接口要素:方法、参数、返回值
接口文档的要素,最重要的就是:
请求方式
请求参数
返回示例
返回参数
接口文档的要素(重点、理解、记住、必考)
接口的概念、分类、功能
接口的概念--接口的要素--接口文档的要素
定义了接口的要素,我们就定义了一个接口。
接口文档先有--开发的依据,测试的依据。
1,接口
2,接口测试
web的工作基本流程:http的基本流程
访问互联网:本质是获取互联网上的某个计算机的资源(数据)
:一个图片、一段文本、一个视频、一个音频、一个可执行程序。
人访问互联网:人想调用互联的某个功能:接口调用。
互联网返回的是:资源(图片等数据)
接口第一个解决的问题是:去哪里获取这个资源。
怎么告诉接口资源的位置:URL
比如,百度首页的URL:https://www.baidu.com/
URL:全球统一资源定位符
1,请求:客户端向服务器端输入请求信息
2,响应:服务器端向客户端输出响应信息
1,输入网址:
http端口号默认:80
https端口号默认:443
2,解析:
1,URL:对什么资源做操作
2,做什么操作:增删改查
查询:
GET:获取一个资源----Select
更新:
POST:新增一个资源--insert
PUT:修改一个资源---update
DELETE:删除一个资源---delete
3,生成http请求消息:
请求消息的结构(重点,记住,必考)
请求的行:第一部分只有一行。
方法 空格 URL 空格 http版本号
头部信息:键值对组成,可以有多个
字段名:字段值
空行
消息体数据:携带的消息数据
响应消息的结构(重点,记住,必考)
响应的行(状态行):只有一行
HTTP版本 空格 状态码 空格 响应提示语
响应的头部字段(响应头):若干行的字段名:字段值
空行
消息体数据
上午:
接口的概念(理解)、功能(了解)、分类(了解)、要素(要素)
接口文档的概念、要素
接口的要素:方法、参数、返回值
HTTP接口的要素:请求地址(URL)、请求方式、返回值、参数(请求和响应的参数)
接口文档的要素:(3-7最重要)
1,接口名称
2,简要描述
3,请求URL
4,请求方式
5,请求参数说明
6,返回示例
7,返回参数说明
8,修订信息(文档相关信息)
web的工作流程:
1,字段重要的字段:P7-P8
Content-Type:text/HTML
application/json
HTML json xml plain(纯文本)
2,状态码:P9
DNS:域名和IP地址一一对应的:
www.baidu.com : 123.54.36.221
URI:www.baidu.com/cd/file1.html
FILE1.HTML -- test.html
整个过程最重要的部分:
请求消息(记住)
响应消息(记住)
URL:指定资源的位置
方法:指定对资源的操作:增删改查
post delete put get
响应消息体:返回的数据
http接口的调用:调用了一个百度的get接口:
http接口的四要素:
请求地址(URL):www.baidu.com
请求方式:get
返回值:
参数(请求和响应的参数):
请求参数:
1,URL后边跟参数:GET方法
URL?参数名=参数值&参数名2=参数值&参数名2=参数值
2,消息体中携带参数:POST方法
响应参数:
所有接口测试工具的测试原理(重点,记住,必考):P2
构造接口文档中的请求,模拟用户发送请求,获取服务器返回的响应报文,跟接口文档中的响应示例做比较,从而从接口层面验证业务逻辑是否正确的得到实现。
什么是功能测试:
验证软件的实现是否符合需求文档中的描述
什么是接口测试:
验证接口的实现是否符合接口文档中的描述
接口的本质:数据传递的规范
为什么做接口测试:
接口测试按照内容可以分为:(记住)
接口功能测试
接口性能测试
接口安全测试
接口测试按执行方式分为:
手工测试:班自动化--借助工具手工执行
自动化测试:使用工具和代码结合,实现完全的自动化
最初级的接口测试:
1,知道测什么:
接口文档
2,选择工具:
聚合数据:平台可以进行简单的接口测试
PostMan
接口测试的原理:
初级的接口测试
day01(无用)的更多相关文章
- 使用gulp-uncss清理多余无用css
cnpm 也可以使用npm cnpm install gulp-uncss --save-dev gulpfile.js var gulp = require('gulp'), uncss = req ...
- 减小ipa体积之删除frameWork中无用mach-O文件
最近项目末期, 我们团队为了ipa的大小使用不少的体积减小的方法, 除了一些常规的方法之外, 我分享一下自己研究出来的新思路. 首先我们来简单的介绍一下mach-O. 什么是mach-O? Mach- ...
- Oracle监控用户索引使用情况,删除无用索引
监控当前业务用户索引 一段时间后查询从未被使用的索引,删除无用索引 停止监控索引 1. 监控当前用户所有索引 得到监控所有索引的语句: select 'alter index ' || index_n ...
- 清理iOS工程里无用的图片,可瘦身ipa
工程在经过多人后,往往会出现较多的垃圾,导致打包出来的ipa文件偏大,有时候我们会通过清理代码来给程序瘦身,而瘦身ipa效果明显的,主要通过清理程序里的无用图片. 推荐一个清理图片的应用 https: ...
- android删除无用资源文件的python脚本
随着android项目的进行,如果没有及时删除无用的资源时安装包会越来越大,是时候整理一下废弃资源缩小压缩包了,少年! 其实判断一个资源(drawable,layout)是否没有被使用很简单,文件名( ...
- Jquery day01
day01: 基础--选择器.属性和CSS.文档处理 day02: 高级--筛选.事件.效果.ajax jQuery介绍 JS类库 JavaScript 库封装了很多预定义的对象和实用函数.能帮助使用 ...
- python Day01
Python Day01 Python 简介 介绍 Python 是一种面向对象.直译式的计算机程序设计语言,也是一种功能强大的通用型语言,已经有将近二十年的发展历史,成熟稳定.包含了一组完善而且容易 ...
- Spring day01笔记
struts:web层,比较简单(ValueStack值栈,拦截器) hibernate:dao层,知识点杂 spring:service层,重要,讲多少用多少 --> [了解] sprin ...
- Android lint 删除无用图片文件和配置文件
Android lint 删除无用.冗余的 配置文件和 图片资源 转载请注明 http://blog.csdn.net/aaawqqq?viewmode=contents Android项 ...
随机推荐
- Logstash filter 插件之 date
使用 date 插件解析字段中的日期,然后使用该日期或时间戳作为事件的 logstash 时间戳.对于排序事件和导入旧数据,日期过滤器尤其重要.如果您在事件中没有得到正确的日期,那么稍后搜索它们可能会 ...
- ArrayList和LinkedList介绍
java.util.ArrayList集合的数据存储结构是数组,且是多线程,元素增删慢,查找快, 由于日常使用开发大多数为查询数据,遍历数据,所以ArrayList是最常用的集合.上一节已写了. ja ...
- Googleplaystore数据分析
本次所用到的数据分析工具:numpy.pandas.matplotlib.seaborn 一.分析目的 假如接下来需要开发一款APP,想了解开发什么类型的APP会更受欢迎,此次分析可以对下一步计划进行 ...
- 【朝花夕拾】Android自定义View篇之(四)自定义View的三种实现方式及自定义属性使用介绍
前言 转载请声明,转自[https://www.cnblogs.com/andy-songwei/p/10979161.html],谢谢! 尽管Android系统提供了不少控件,但是有很多酷炫效果仍然 ...
- C# 模拟Windows键盘事件
发送键盘消息 [DllImport("user32.dll", EntryPoint = "keybd_event", SetLastError = true) ...
- (转)RocketMQ工作原理
原文:https://blog.csdn.net/lyly4413/article/details/80838716 1.消息中间件的发展: 第一代以ActiveMQ为代表,遵循JMS(java消息服 ...
- goweb-搭建服务
web应用简介 Web 应用在我们的生活中无处不在.看看我们日常使用的各个应用程序,它们要 么是 Web 应用,要么是移动 App 这类 Web 应用的变种.无论哪一种编程语言,只要 它能够开发出与人 ...
- 松软科技web课堂:JavaScript 数组迭代方法
数组迭代方法对每个数组项进行操作,听着挺高深,其实,就是对数组对象一次性逐一进行一种操作的一种叫法.(文章来源:www.sysoft.net.cn,加v:15844800162深度交流) Array. ...
- 解决Xcode10 Library not loaded: /usr/lib/libstdc++.6造成的crash及报错
关键字1:dyld: Library not loaded: /usr/lib/libstdc++.6.dylib Referenced from: 关键字2:Reason: no suitabl ...
- OpenCV:图像的水平、垂直、水平垂直翻转
首先导入相关的库: import cv2 import matplotlib.pyplot as plt 自定义展示图片的函数: def show(image): plt.imshow(image) ...