1、接口测试用例的编写要点有哪些?
1)入参,包括参数合法性,参数校验,参数边界,参数为空,缺少参数等
2)返回值,包括各种情况下的响应内容是否正常
3)接口业务逻辑和功能是否正常
4)数据库校验
5)性能测试(接口tps,响应时间)
6)安全性,敏感信息加密,权限控制等
2、你是怎么测试接口的?
1)先了解接口的业务功能、入参出参以及接口对应的数据库存储
2)依据接口接口测试用例设计方法完成接口测试用例的设计
3)最后依据测试用例使用接口测试工具完成接口测试,并在测试过程中通过查看响应数据确保接口测试结果的正确性
3、get和post的区别
1)get请求的参数是放在url里,post请求参数是在请求体里
2)get请求可以被浏览器缓存,post请求不能被缓存
- get请求参数放在url里,url的长度是有限的,而post接口长度没有限制
4)get请求参数放在url里,安全性比较差,post请求参数放在body中,安全性相对较好
5)get请求可以直接通过浏览器访问,支持刷新和后退。post请求不能直接使用浏览器访问,刷新后数据要重新发送
4、http和https的区别
1)HTTP信息是明文传输的,而HTTPS是具有安全性的加密传输
2)HTTP的标准端口是80,而HTTPS的标准端口你是443
3)HTTP无需证书,而HTTPS需要认证证书
5、cookie 和 session 的区别
1)cookie数据存放在客户端的,session数据放在服务端的
2)cookie不是很安全,别人可以分析存放在本地的cookie进行cookie欺骗
3)session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的内存
4)单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie, 而session则存储于服务端,浏览器对其没有限制
6、token是做什么用的
token就是令牌,是一个字符串,主要是用于做客户端身份认证,通常登录成功后,服务端会返回
token,客户端需要把token值保存下来,后续请求其他接口时,需要在请求中携带这个token值,只有服务端对token校验通过后,才允许访问。
7、说一下你知道的HTTP状态码,以及它们代表什么意思?
8、常见的HTTP 请求头
9、pyhon都有哪些数据类型
整型--int
布尔型--bool
字符串--str
列表--list
元组--tuple
字典--dict
集合 -- set
空 - None
10、Python中的元组和列表的区别是什么?
相同点:
1)都是序列
2)都可以存储任何数据类型
3)可以通过索引访问
区别:
列表是可变的,而元祖师不可变的
11、Python中的break、continue、pass代表什么意思?
1)break: 跳出循环,不再执行
2)continue: 跳出本次循环,执行下一次
3)pass: 不做任何事情,只起到占位的作用
12、如何在python中生成一个随机数
要在Python中生成随机数,您需要将命令导入为:
import random
random.random()
13、请用自己最擅长的编程语言,将一个字符串反转并输
出?
python实现:
方法1、使用[::-1]:
s = 'python'
print s[::-1]
方法2、使用reverse()方法:
= list(s)
l.reverse()
print ''.join(l)
14、什么是切片?
切片是python中的一种方法,能让我们只检索列表、元祖或字符串的一部分。在切片时,我们使用切片和操作符
15、写一下冒泡排序
def bubble_sort(arr):
n = len(arr)
for i in range(n - 1):
for j in range(n - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]