一、 接口测试
内容包含:
- 接口的概念
- Json
- Cookie 和 Session 的区别
- 不同请求类型如何测试(get 和其他)
- Charles 的使用
- 接口:是指对协定进行定义的引用类型(来自百度)。通俗的讲,就是用来从数据库获取数据的。
- Json:所有语言都可以解析的数据类型。
- Cookie 和 Session:Session 是存在服务器的键值对,相当于通往服务器的通行证;Cookie 是存在本地的键值对。
- 如何进行接口测试
- 对于 get 请求,不需要借助工具,可以直接在浏览器访问,格式为:www.***.com?k1=value1&k2=value2
- 其他请求使用工具,以 postman 为例
- 直接传参的方式是,在 body 的 form-data 填写相应的 key 和 value
- 入参方式为 json 类型时,在 body 的 raw 填写内容
- 因为记忆力太差去百度眼力又太差,结果困扰我许久的带 cookie 类型的请求,内容需填写在 headers,key 为 cookie,value 为 ‘某value=cookie’,如下图
二、 Charles的使用
主要内容:
- 安装证书可抓取 https 请求
- 模拟弱网,proxy-throttling setting
- 打断点,BreakPoints,为避免超时也可以使用本地文件,tools-Map Local
三、 Python 第一课
知识点总结:
- 变量定义(字符串加引号,数值直接赋值)
- input 使用(接收到的类型为 string)
- 条件判断(if…else…)
- 循环(for 循环和 while 循环)
- 字符串格式化
- list(数组的增删改查和几个常用方法)
前三点比较简单,基本是概念性的东西,就不再多说,主要想记录下循环和数组的使用
4.循环
其实循环也算熟悉了,while 在使用时需要有计数器,需要避免死循环的情况,而 for 循环不需要单独定义计数器。
示例 while 循环:
count = 0
while count < 5:
循环体
count += 1
for 循环:
for i in range(3):
循环体
重点1: 只要在循环中遇到 break,循环立马结束;遇到 continue,结束本次循环,实际在用的时候,有些情况比如 continue 之后没有要执行的内容,此时写不写 continue 都一样。
重点2: 两种循环都可以加上 else,用于正常循环结束后执行。(只要不是 break 结束的,都要执行 else 部分)。
应用:一个简单的猜数游戏
import random
num = random.randint(1,100) #生成一个1-100的随机数
count = 0
while count < 7:
guess = input('请输入一个数字:')
guess = int(guess)
count += 1
if guess == num:
print('猜对了!')
elif guess < num:
print('猜小了')
else:
print('猜大了')
else:
print('错误次数过多!')
5. 字符串格式化
一句话解释这是干嘛的呢,就是输出某个参数时,先用 %s (或者d、f) 占位,再给这个变量传值
应用:
import datetime
today = datetime.datetime.today()
username = input('Please input your name:')
welcome = '欢迎 %s 登录,今天的日期是 %s'%(username,today)
print(welcome)
我在这犯过的错是,在给变量传值前的%加了‘,’,写成
welcome = '欢迎 %s 登录,今天的日期是 %s',%(username,today) #这是一个错误示范
另外,字符串也支持简单粗暴的拼接(+的方式),但只能是字符串格式的相接
再次,%f(%.2f 表示保留两位小数),%d(传的类型是整数),%s(通用类型)
6. list(列表、数组)
- 定义方式:a=[]
- 增:a.insert('abc'),这种方式增加的元素在列表的最后;
- 删:a.delete('abc'), a.remove('abc'), a.pop('abc'), 最后这种方式会随机删除一个元素;删除时下标找不到会报错
- 改:直接通过下标的方式更改特定位置的元素
- 查:通过下标,a[0] 表示第一个元素,a[-1] 表示最后一个
- count:用来计算列表中某元素的个数,不存在时 = 0
- index:用来查某元素的下标,不存在时报错
- 多维数组就是数组的嵌套