python选择题题目_Python接口测试题(持续更新中)

1、json和字典的区别?

Json是轻量级的数据交互格式,以key-value的键值对形式来保存数据,结构清晰,可以说是目前互联网项目开发中最常用的一种数据交互格式。

字典,同样是以key-value的键值对来保存数据,是python中的一种数据类型。

2、你做接口自动化测试时,测试数据放哪里?

1) 对于一些基础配置比如数据库配置可以放到properties文件(yaml文件,没用过就别拓展了)

2) 接口测试需要用到的数据可以放数据库表,也可以放到excel中。

3、什么是数据驱动?

数据驱动就是通过excel,或者xml,数据库等数据结构来维护测试数据,通过相应的技术去处理,拿到测试数据用于测试,从而实现测试数据与代码的解耦,数据驱动测试的本质是高级的参数化。

4、excel中如何设计你的用例?

1) 所有的接口信息维护在一个表单

2) 关于接口的用例数据维护在一个表单

3) 接口传参一列来传,通过构造json格式的字符串即可解决传多个参数的问题,同时提升了用例的可维护性

5、excel中的数据怎么拿出来?

通过第三方库openpyxl来完成,项目只需要引入openpyxl库,通过它提供的api即可完成对于excel的操作,甚至于我们自己也可以做一些二次封装,使得操作更方便。一行数据就是一个用例。

6、如果有些接口做了鉴权(需要鉴定权限),怎么实现这些接口的自动化测试?

首先需要明确接口是通过什么机制来实现的鉴权

如果是通过会话id(123456)来实现鉴权的,那么先调用完登录接口,拿到它返回的这个数据,存储起来,后面再调用其他接口的时候直接带上这个数据过去就可以了。

如果是通过token来实现鉴权的,那么同样只需要在调用完登录接口,拿到它返回的这个数据,存储起来,后面再调用其他接口的时候直接带上这个数据过去就可以了。

7、什么是会话?

所谓会话就是session,而session是一种服务器的缓存技术,由服务器端创建,用户登录了系统,一般就会把登录用户的信息保存到这个session对象中,然后把此会话对应的id(JSESSIONID)返回,因此大部分系统都会用到session机制来实现鉴权。Session保存数据方式也是以key-value的形式。

8、什么是token?

所谓token其实就是服务器端返回的一个字符串(有点类似于:xys73494954sdhcdr83435这么一串),这个数据是基于什么算法生成的需要找开发确认,一般这个数据是唯一的,服务器每次返回的token都会不一样。Token之所以可以用来做鉴权,原理如下:

用户a调用了登录接口--》登录了系统b--》服务器端生成了一个唯一的token信息(假设为c),然后会拿用户的编号id(假设为d)做了一个映射:c-d,然后将这样的映射关系存到数据库或redis等缓存中,然后再返回这个token给客户端--》客户端再调用其他需要鉴权的接口时,只需要将缓存起来的这个token带过去验证--》服务器根据此token检查是否有登录用户信息来判断此请求是否是一个已登录授权的用户。(这里客户端怎么取到这个token,怎么存,再次请求时怎么带过去,上面接口鉴权部分已解释)。

某个接口请求,参数依赖上个接口的返回数据,怎么处理(接口关联)?

场景:b接口在调用的时候参数依赖于a接口的返回数据。

处理方案:

a接口调用完--》从响应中取出b依赖的这个参数--》保存起来--》b调用的时候,取出这个信息--》当做参数传过去即可。

保存方案:

参考问题5中的数据保存方式

9、接口调用依赖第三方的接口b,而b接口还未提供给你,如何处理?

通过mock框架搭建自己的mock系统/平台(其实就是自己开发接口),模拟这个第三方接口mock一个出来即可,这样就解决了这个依赖。

10、接口测试的垃圾数据如何清理?

可以自己准备单独的环境(独立的数据库),这样接口调用产生的数据可以在整个套件执行完后(@AfterSuite)通过执行sql脚本来完成数据删除。

11、你做接口自动化,项目用的是什么数据库,用什么来操作的这个数据库?

Mysql,可以通过jdbc来实现数据库的增删查改等操作。

20200306155043551201.png

原文:https://www.cnblogs.com/Christalccc123/p/12426359.html

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

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

相关文章

javascript事件之:jQuery事件中实例对象和拓展对象之间的通信

我们总结过jQery事件中的实例原型对象对外接口和拓展对象,现在我们看看他们是如何进行通信联系的。 先来看便捷方法: 1 //调用的还是实例对象下的on()和trigger()2 jQuery.each( ("blur focus focusin focusout load resize scroll unload click db…

SQL 中的unicode字符

要将字符转换成unicode字符以显示某些符号,可以在字符串前加N,如: select N♧♡♂♀♠♣♥❤☜☞☎☏ 转载于:https://www.cnblogs.com/Laro/archive/2011/03/07/1976483.html

html5 ajax数据显示,html5的ajax学习(二)

一、基础知识点1.ajax可以做事情:局部刷新 浏览器搜索列表记录 加载更多的数据2.登录页面同步网络请求:页面全部刷新,用户量大体验很不好3.ajax的详解:ajax的get和post请求 同步还是异步,true为异步ajax.open("ge…

后羿采集器怎么导出数据_后羿SEO:如何用后羿采集器查收录?(附详细步骤图)...

摘要:不知道大家查收录是用啥查的,或许市面上有工具,可以批量查,但是这些工具不是收费就是查询结果不太准确。今天狠人SEO教大家一个查询结果比较准确的方法。如标题写的,...不知道大家查收录是用啥查的,或…

ISA Server服务器故障恢复一例系统盘符更换之后的应对方法

周四下午的时候,某政府信息中心领导打电话告诉我,ISA Server服务器不能开机了。随后公司的技术员到达现场,经过检查,发现服务器显卡损坏。在更换显卡后,服务器可以开机,但却不能进入系统—-服务器在经过BIO…

有梦想就有前进的动力

有梦想就有前进的动力,我为自己代言转载于:https://blog.51cto.com/9730193/1589340

扩展Windows Mobile模拟器存储空间的方法

在Windows Mobile应用程序开发的初期,可以使用SDK自带的模拟器来进行调试,这给我们开发人员提供了一种方便的途径。一般的应用程序,占用空间的大小也就几 百K,或者几M,这在模拟器上调试起来一点问题也没有。但是有的时…

UOS LoongArch 上成功安装.NET Core 3.1

龙芯.NET团队正式发布了.NET Core 3.1 For LoongArch, 具体参见龙芯开源网站 http://www.loongnix.cn/index.php/Dotnet 。进入安装包下载地址LoongArch64-.NET Core 3.1,可以看到龙芯.NET团队做了很多工作,为Debian和Redhat两大Linux体系平台都做好了基…

c++ vector拷贝构造_JDK源码分析-Vector

1. 概述上文「JDK源码分析-ArrayList」主要分析了 ArrayList 的实现原理。本文分析 List 接口的另一个实现类:Vector。Vector 的内部实现与 ArrayList 类似,也可以理解为一个「可变数组」。其继承结构如下(省略部分接口)&#xff…

除了PS,原来这个也可以轻松实现图像处理!

全世界只有3.14 % 的人关注了爆炸吧知识在我们生活中,常见的图像处理软件有Adobe Photoshop、Adobe Illustrator等。然而,并非只有软件才能实现图像处理,通过编程手段也是能实现的!今天,小天将要带着大家走进计算机视觉…

HTML5视频和音频常见的格式,HTML5 音频和视频

HTML5 特性,包括原生音频和视频支持而无需 Flash。HTML5 和 标签让我们给站点添加媒体变得简单。我们只需要设置 src 属性来识别媒体资源,包含 controls 属性让用户可以播放和暂停媒体。嵌入视频下面是在 Web 页面中嵌入视频文件最简单的形式&#xff1a…

北斗三号b1c频点带宽_【导航论坛】北斗三号卫星导航信号及接收策略

原标题:【导航论坛】北斗三号卫星导航信号及接收策略编者按以“5G/GNSS高精度定位与空间数据深度应用”为主题的高峰论坛上,来自清华大学的陆明泉教授为与会代表带来了题为《北斗三号卫星导航信号及接收策略》的主题报告。陆教授首先对报告的题目作了一个…

下雨天纵使少了什么也是少不了一把伞的,即使是几千年前,也不管细雨霏霏,大雨倾盆。愿意沐浴风雨中,享受这样惠泽的人总是少的。从“孤舟蓑笠翁,独钓寒江雪”,“十里一长亭,五里一短亭”&#xf…

oracle用户名密码过期引起的网站后台无法登录

本来今天休息,但是接到同事反映:客户的WEB无法登录了,网站能打开,但是后台登录不了。我就联系了客户,客户说是WEB用户的密码过期导致的,默认是180天到期。接着就是我的操作流程了:1.先从WEB服务…

微服务的终极目标,Mecha分布式运行时之Dapr

1. Mecha 是啥?微服务发展到今天,已经有很多公司多年前已经改造完毕,也有些公司还在路上,微服务的优势,有过了解的朋友应该也都能说出个一二三来,经历过微服务改造的,应该都知道其中的艰辛。单体…

java mina unix client

/Files/nanshouyong326/MinaTest.rar转载于:https://www.cnblogs.com/nanshouyong326/archive/2011/03/15/1985130.html

python input输入多个变量_「Python 秘籍」1.2 解压可迭代对象赋值给多个变量

问题需要从某个可迭代对象中分解出 N 个元素,但是这个可迭代对象的长度可能超过 N,这会导致出现“需要解包的值过多(too many values to unpack)”的异常。解决方案“星号表达式”可以用来解决这个问题。例如,假设开设了一门课程,…

为什么不谈恋爱?

1 存好啦!2 这是我看过最形象的小说描写了图自天秀bot3 原来游泳池是这样建的。。4 这谁还舍得拉绳子啊5 铁笼:大哥,给点面子好不好?6 别说,这门给狗子放头还挺合适的7 机器人骑自行车你点的每个赞,我都认真…

jpa 默认生成sql语句_springboot-jpa自动创建数据库表

第一步创建springboot项目,jpa,mysql,代码如下:application.ymlspring:datasource:url: jdbc:mysql://127.0.0.1:3306/springboot_testusername: rootpassword: 514730driver-class-name: com.mysql.jdbc.Driverjpa:hibernate:# 更新或者创建数据表结构d…

html怎么做交互留言,简单html与servlet交互

1.usercheck.htmlhref"../lib/ligerUI/skins/Aqua/css/usertext.css" rel"stylesheet"type"text/css" />填写用户名/>id"verifyButton"/>>2.usertext.css.userClass {border: 1px solid red ;background-image:url(../../…