后端接口重定向_接口自动化面试题,建议收藏!

66886f12ed948fd7c30705a045443ecc.png

1、get和post的区别?

l http是上层请求协议,主要定义了服务端和客户端的交互规格,底层都是tcp/ip协议

l Get会把参数附在url之后,用?分割,&连接不同参数,Get获取资源,post会把参数放置在http请求体中,Post发送请求数据

l Get产生一个tcp数据包,post产生两个tcp数据包

l Get请求,浏览器会把http header和data一起发送,服务器返回200响应码

l Psot请求,浏览器先发送header,服务器响应100(continue),然后再发送data,服务器返回200响应码

l Post的安全性比get高,如果浏览器缓存了,会把get参数留在缓存中,用户可以看到参数信息

2、post请求的四种参数形式是什么?

Application/x-www-form-urlencoded:将参数以一组键对值的方式发送

Multipart/form-data:支持单组和多组文件上传

Application/json:根据后端接口的定义支持数据类型

Text/xml

3、http状态码302, 403, 503分别代表什么?

302:临时重定向到某一个页面,比如要登录之后才能进入的页面,他首先会临时重定向到登录界面

403:权限不够 服务器理解客服端的请求,但拒绝此请求

503:服务端目前无法使用,过载或者维护中

500:服务端异常

404:请求失败,请求所希望得到的资源未被在服务器上发现

401:请求身份验证

1XX系列:指定客户端应相应的某些动作,代表请求已被接受,需要继续处理

2XX系列:代表请求已成功被服务器接收、理解、并接受。这系列中最常见的有200、201状态码。

3XX系列:代表需要客户端采取进一步的操作才能完成请求,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。这系列中最常见的有301、302状态码。

4XX系列:表示请求错误。代表了客户端看起来可能发生了错误,妨碍了服务器的处理。常见有:401、404状态码。

5xx系列:代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。常见有500、503状态码。

4、公司有用到第三方服务,出了问题,打电话给第三方,第三方不承认,这时候日志又显示不到错误,应该怎么处理?

1/ 单独调用第三方服务,查看三方接口返回的status,code,msg,看是否能支持正常服务

2/ 在自己的应用中mock第三方服务,来调用自己的接口,看能否正常工作,将结果反馈给第三方

3/ 配置日志级别在debug级别时,添加第三方请求过程的日志,查看入参,响应来追踪问题

5、接口自动化中的关联怎么处理?

把上一个请求返回的结果传入到下一个请求的参数中,将请求的结果反射到一个类属性(使用setattr()函数),下一个请求去调用这个类属性

6、自动化测试怎么校验结果?

断言 ,预期结果与实际结果对比

数据库校验,根据测试场景来查询数据库里的数据和请求之前的数据进行比对

7、自动化使用的测试框架是什么?简述自动化框架的设计、维护

1/测试框架:python+unittest+requests+ddt+openpyxl+pymysql+logging

测试框架:

python:入门简单,语法简洁

unittest :定义一个测试用例类,具体的方法来维护测试用例的生命周期,测试场景行为,测试用例 前置场景,行为,期望结果,实际结果,断言方法,Setup teardown方法

requests:接口调用 ,支持http请求的库,API 简洁,提供不同的http请求方法,支持session,cookies,

ddt :数据驱动,ddt 类装饰器,data 测试方法装饰器 unpack解包可迭代的数据类型

普通用户,数据库,配置文件---(基础数据)

openpyxl: 数据管理 excel管理数据,使用openpyxl模块来进行excel数据的读和写(excle,csv, json, yaml, txt都可以管理测试数据)

pymysql:数据库交互,数据校验

eval,json:数据格式的转换 Eval将python支持的格式转换成对应的格式

logging:日志处理, 统一日志输出格式,渠道,级别,执行结果的记录,便于定位问题

jenkins:持续集成

2/框架设计思路:数据驱动+结构分层(可读性,可维护性,可扩展性)

数据驱动:将维护数据与代码分离,接口调用行为一致,针对不同的参数组合驱动不同的测试场景,减少代码冗余

结构分层:数据层+用例层+逻辑层

数据层:测试数据的支撑 data.xls

用例层:用例的执行 test_register.py test_recharge.py

逻辑层:公用的方法的封装与提取 doexcle.py do_mysql.py http_requests.py logger.py等模块

3/框架设计步骤:

准备测试数据: EXCEL表准备测试用例---excel数据的读取---参数值的替换

发起请求:请求方法(get/post方法进行封装---URL的拼接(不同---参数转化为字典

拿到请求的返回值:解析返回值code,status,msg信息

断言

好处:

1、自动化测试用例和手工测试用例的完美结合,减少重复工作

2、配置灵活,可以自主切换测试环境,执行测试用例

3、常用功能进行封装,逻辑清晰,易于维护

4、统一执行入口,管理测试用例集:

run.py模块通过模糊查找来选择需要执行的测试用例

5、持续集成,定时构建,快速反馈

8、具体的在这个项目中自动化怎么应用到实际的,您对自动化结果的分析

完成所有的自动化测试框架的设计和实现后,进行接口测试,然后集成到jenkins,配置定时执行,生成html报表,查看测试通过率,查看接口的功能

每次发版时,进行回归测试,新功能开发未提测前

9、做好测试计划的关键是什么?

明确测试目的,增强测试计划的实用性,保证测试用例的实用性和覆盖率,完全需求文档和规格指标书等,严格界定测试周期,测试轮次,测试覆盖模块等

软件测试技术交流群:(见文章开头图片)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

期货市场计算机分析指南在线,期货市场计算机分析指南

39.60定价:55.00(7.2折)(美)勒博,(美)卢卡斯 著,何苗 译/2012-04-01《期货市场计算机分析指南》花费了作者大量的心血,这从书中的内容就可以看出。我所读过的有关技术分析的大部分书未能给各种技巧及随后的交易方法打下坚实的基础…

吃货都是怎么给自己找理由的? | 今日最佳

世界只有3.14 % 的人关注了青少年数学之旅(图源网络,侵权删)看得我都饿了↓ ↓ ↓

用SharpZipLib来压缩和解压文件 --zt

from:http://www.cnblogs.com/zhangweiguo3984/archive/2007/03/15/314333.html#6756341.建立工程,添加引用,添加SharpZipLib.dll2.建立压缩和解压类CompressionFile.cs添加如下代码usingSystem;usingSystem.IO;usingICSharpCode.SharpZipLib.Zip;usingI…

vue 给取data值_web前端教程分享Vue相关面试题

Vue是一套构建用户界面的渐进式框架,具有简单易用、性能好、前后端分离等优势,是web前端工程师工作的好帮手,也是企业选拔人才时考察的重点技能。接下来就给大家分享一些Vue相关的面试题,帮助大家提升竞争力。你对Vue生命周期的理…

.NET Core with 微服务 - Consul 配置中心

上一次我们介绍了Elastic APM组件。这一次我们继续介绍微服务相关组件配置中心的使用方法。本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大,还是让我爱不起来。因为前面我们已经介绍了使用Consul 做为服务注册发现的组件,那…

程序员最爱说的十句口头禅。。 | 今日最佳

世界只有3.14 % 的人关注了青少年数学之旅1、别更新了学不动了。2、我不会修电脑,谢谢。3、听说今晚不用加班。4、是你的网络有问题。5、清一下缓存再试试6、扫码提需求,谢谢。7、换一台设备试试看。8、保证今晚十点上线。9、键盘给你,你来写…

.NET 6 新特性 System.Text.Json 中的 Writeable DOM

.NET 6 新特性 System.Text.Json 中的 Writeable DOM 特性Intro在 .NET 6 Preview 4 中,微软加入了 JSON Node 的支持,我们可以动态的编辑一个 JSON 文档,一个可以修改的 JSON 文档,就像 Newtonsoft.Json 里的 JToken,…

ArcGISServer10安装与地图发布

1.安装ArcGISServer10前先启动IIS,并打开IIS管理器界面,检查是否已经安装好。2.新建一个自己的站点打开Internet信息服务(IIS)管理器,右击左侧的网站列表,选择——添加网站,如下图所示&#xff…

电影特效用到什么计算机知识,后期影视特效处理知识普及

电影特效作为电影产业中不可或缺的元素之一,为电影的发展做出了巨大的贡献。今天小编主要给大家分享后期影视特效处理知识普及,希望对你们有帮助!影视特效改变电影制作的方式在目前的电影制作过程中,从分镜头剧本开始,特效的理念已…

通达信版弘历软件指标_通达信软件指标编写基础教程,10个指标源码祝你股市一帆风顺...

一、基本函数HHV(X,N) N日内X的最高价LLV(X,N) N日内X的最低价VOL 成交量AND 和,表示同时满足MA(X,N) 移动平均线,5日均线可以写作MA(CLOSE,5)&am…

魔方内部长啥样?三维动画展示其结构,谁发明的真是个天才

全世界只有3.14 % 的人关注了青少年数学之旅魔方,英文名为Rubiks Cube,又叫鲁比克方块,最早是由匈牙利布达佩斯建筑学院厄尔诺鲁比克(又称作厄尔诺卢比克)教授于1974年发明的。魔方竞速是一项手部极限运动。咱们平时看…

Hello Blazor:(2)集成Tailwind CSS续——nuget包方式

前段时间,写了一篇“Blazor如何集成Tailwind CSS”的文章。但是操作起来比较麻烦,又是命令行,又是要修改一大堆配置。后来,我又找到一个更简单的方法。实现方式新建Blazor项目,然后引用nuget包BamButz.MSBuild.Tailwin…

30屏幕参数_顶级屏幕加持,一加8系列核心配置、屏幕参数官方公布

昨天,一加8系列官宣将于4月16日进行线上发布。届时,全新的一加8系列将正式到来。随着官宣的开启,一加手机也开始了新机的预热。参数配置上,一加官方剧透称,一加8系列全系标配骁龙865 5G旗舰级移动平台,全系…

陕西科技大学18计算机调剂,2018年陕西科技大学考研调剂信息公布

2018考研复试交流群(进群领内部资料) 5764338402018年陕西科技大学考研调剂信息公布2018年考研成绩查询接近尾声,部分成绩不太理想的考生可能会考虑考研调剂,为了方便考生,中公考研小编为大家整理了2018年陕西科技大学考研调剂信息公布&#…

垃圾软件!动不动就扣费!| 今日最佳

世界只有3.14 % 的人关注了青少年数学之旅一、二、三、四、五、(图源网络,侵权删)我怀疑有人偷窥我生活↓ ↓ ↓

WPF实现统计图(饼图仿LiveCharts)

WPF开发者QQ群: 340500857 | 微信群 -> 进入公众号主页 加入组织欢迎转发、分享、点赞、在看,谢谢~。 01—效果预览效果预览(更多效果请下载源码体验):一、PieControl.cs 代码如下 using System.Collections.Obje…

计算机实践教程采莲趣事,计算机基础作业采莲趣事

精品文档 . 忽然想起采莲的事情来了。采莲是江南的旧俗,似乎很早就有,而六朝时为盛;从诗歌里可以约略知道。采莲的是少年的女子,她们是荡着小船,唱着艳歌去的。采莲人不用说很多,还有看采莲的人。那是一个热…

那些曾经拥有的最大快乐,都是好奇心的结果

▲ 点击查看对于孩子们来说,强烈的好奇心和求知欲,是一种本能。在他们懵懵懂懂长大的过程中,总是对周围的世界充满着各种各样的疑问:“叶子为什么是绿色的?”“为什么花朵有那么多种颜色?”“蚂蚁为什么能…

[原]让链接点击过后无虚线

我以前还以为有难呢,在网上查资料,才知道这么简单, <a href"http://www.ktbbs.com"onfocus"this.blur()">转载于:https://www.cnblogs.com/Kennytian/archive/2007/03/31/695463.html

UML简易实践

2019独角兽企业重金招聘Python工程师标准>>> 面向对象的问题的处理的关键是建模问题。建模可以把在复杂世界的许多重要的细节给抽象出。许多建模工具封装了UML&#xff08;也就是Unified Modeling Language™&#xff09;&#xff0c;这篇课程的目的是展示出UML的精…