问题(五)
综合考核:
1、HTTP协议的组成部分?
HTTP 请求的组成
状态行、请求头、消息主体三部分组成。
HTTP 响应的组成
状态行、响应头、响应正文
2、postman中断言是在哪里断言?断言哪三部分?
一般断言协议状态码,返回参数是否包含某部分,响应时间
3、postman的请求参数在哪里?
post 请求
get 请求
4、一个完整的测试流程?
PRD产品需求文档(交互,逻辑)
PRD评审
研发(写代码技术档案,写代码)
测试(写计划,写方案,写测试用例)
转测试(冒烟测试,完成,上线)
开始测试
5、冒烟测试是什么?
确认软件基本功能是否正常
6、开发要转测的依据是什么?
开发自测———————转测
| 反馈 | 冒烟测试——流程是否通
冒烟测试失败——不通过 | 通过——进入测试环节
7、如果开发那边代码写不完,超过预期时间你怎么办?
早会时间进行问题反馈,加快开发进度或进行上线延期
8、对淘宝购物车有哪些测试点?用等价类边界值如何划分?
例:购物车商品添加
购物车商品删除
购物车商品数量增加
购物车商品结算
购物车商品金额改变,是否显示正常
购物车的全选功能
设商品数量最小为 1 最大为 100
商品添加100个是否出现异常
商品添加101个是否出现异常
商品添加1个是否出现异常
无货商品添加是否异常
9、ui测试定位元素有?对于多元素怎么定位?
ID="id"
XPATH="xpath"
LINK_TEXT="link text"
PARTIAL_LINK_TEXT="partial link text"
NAME="name"
TAG_NAME="tag name"
CLASS_NAME="class name"
CSS_SELECTOR="css selector"
单个元素定位:find_element
多个元素定位:find_elements
单个元素定位和多个元素定位的区别就是,单个元素定位返回是单个元素,多个元素定位返回的是包含多个元素的一个列表。
10、ui自动化测试和接口测试区别?
接口效率高,覆盖率高,维护成本低,属于低成本,高收益。
UI自动化效率低,易受其他原因影响导致执行失败,覆盖率低,维护成本较高,属于投入较高,收益较低的类型。优点是可以完全模拟用户行为,更贴近真实
11、接口测试需要携带哪些参数?
Content-Type:指的是数据格式
Cookie:反爬虫,身份凭证
Referer:发送请求的地址是从哪里来的
User-Agent:发送网络请求的时候向服务端标注请求是通过什么浏览器或者什么软件(PostMan,JMeter)发送的
12、linux有哪些常用的命令?查看文件是那个命令?
ls列出目录内容格式:ls[选项][目录名] []中非必选项
alias:查看系统存在的别名
定义别名:alias 别名=“命令”
取消?个别名:unalias 别名
13、比如mysql中对2021年的前6个月的工资总和,用到那些命令?
select sum(表项) from 表名;
14、常用的请求方法?get和post方法区别?
GET:客户端从服务端获取资源
POST:客户端往服务端发送请求添加新的资源
PUT:客户端针对服务端已有的数据进行更新
DELETE:客户端删除服务端已有的数据
POST和GET的区别
GET提交的数据放在URL中,POST不会
GET回退无影响,POST会再次提交请求(POST每次都会创建新资源)
GET提交的数据大小有限制(浏览器对URL的长度有限制,GET本身没有限制),POST没有
GET可以被保存为书签,POST不可以
GET能被缓存,POST不能
GET只允许ASCII字符,POST没限制
区别就在于数据存储的位置。各自有适用环境,根据需求选择合适的方法即可。
15、常用的业务状态码?
200:请求已正常处理
301:永久性重定向
302:临时性重定向
303:303状态码和302状态码有着相同的功能,303状态码表示客户端应当采用GET方法获取资源
400:请求报文中可能存在语法错误。
401:该状态码表示发送的请求需要通过HTTP认证
403:表明对请求资源的访问被服务器拒绝了(无权限)
404:服务器上没有请求的资源
500:表明服务器端在执行请求时发生了错误
503:服务器暂时处于超负载或正在停机维护
16、元组和字典的区别?
元组不可修改;字典可修改,没有顺序
17、字典如何输出key的值?如何输出value的值?
dict1 = {'a': 'b', 'c': 'd', 'e': 'f'}
print("对字典根据key进行排序:", dict(sorted(dict1.items(), key=lambda item: item[0])))
print("对字典根据value进行排序:", dict(sorted(dict1.items(), key=lambda item: item[1])))
文件上传服务 超时
成功,文件是否确实
成功,文件内容乱码
拆分上传 上传成功后合并
文件上传服务 打开 JVM 工具
获取 pid
成功,文件内容乱码
拆分上传 上传成功后合并