接口测试题目_jmeter接口自动化测试框架

接口测试题目_jmeter接口自动化测试框架http接口工具有很多如:postman、jmeter、soupUI、Java+httpclient、robotframework+httplibrary、Fidder+postman等1、什么是接口接口就是内部模块对模块,外部系统对其他服务提供的一种可调用或者连接的能力的标准接口的种类和分类:webservice和httpapi接口1)webservice接口是走soap协议通过htt…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

原文地址戳这里!!

http接口工具有很多如:postman、jmeter、soupUI、Java+httpclient、robotframework+httplibrary、Fidder+postman等

1、什么是接口
接口就是内部模块对模块,外部系统对其他服务提供的一种可调用或者连接的能力的标准
接口的种类和分类:webservice和http api接口
1)webservice接口是走soap协议通过http传输,请求报文和返回报文都是xm格式,可以通过jme、soapui工具进行测试
2)http api接口是走http协议通过路径来区分调用的方法,请求报文格式都是key-value形式,返回报文一般是json串,常见的请求方式有get、post请求等;

1、什么是接口测试
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等

2、接口测试流程
需求讨论,需求评审,场景设计,编写用列,准备数据,执行测试
a)需求评审,熟悉业务和需求
b)开发提供接口文档(必须提供接口说明、url、请求方法、请求参数、参数类型、请求参数说明及返回参数说明)
  c)编写接口测试用例
  d)进行用例评审
  e)提测后开始测试
  f)提交测试报告

3、http协议get和post请求方式区别

get请求:从指定的服务器中获取数据,直接在浏览器里输入就可以获取信息
post的请求:提交数据给指定的服务器处理,可以向服务器发送修改请求,从而修改服务器的,需要借助测试工具;

1、做接口测试如何分析是前段还是后端的问题?

如果发送的数据是正确的,但是后台反馈的数据是不符合需求的,那就是后台的问题;如果前端没有请求接口,或者请求的时候发送数据与需求不符,那这个时候就是前端的问题了

2、session和cookies区别?

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、所以个人建议:
将登陆信息等重要信息存放为SESSION
其他信息如果需要保留,可以放在COOKIE中

3、怎么抓取HTTPS协议?
使用Fiddler抓取HTTPS协议主要由以下几步进行:

第一步,Fiddler截获客户端发送给服务器的HTTPS请求,Fiddler伪装成客户端向服务器发送请求进行握手 。

第二步,服务器发回相应,Fiddler获取到服务器的CA证书, 用根证书(这里的根证书是CA认证中心给自己颁发的证书)公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。然后Fiddler伪造自己的CA证书(这里的CA证书,也是根证书,只不过是Fiddler伪造的根证书), 冒充服务器证书传递给客户端浏览器。

第三步,与普通过程中客户端的操作相同,客户端根据返回的数据进行证书校验、生成密码Pre_master、用Fiddler伪造的证书公钥**,并生成HTTPS通信用的对称密钥enc_key。

第四步,客户端将重要信息传递给服务器, 又被Fiddler截获。Fiddler将截获的密文用自己伪造证书的私钥解开, 获得并计算得到HTTPS通信用的对称密钥enc_key。Fiddler将对称密钥用服务器证书公钥**传递给服务器。

第五步,与普通过程中服务器端的操作相同,服务器用私钥解开后建立信任,然后再发送**的握手消息给客户端。

第六步,Fiddler截获服务器发送的密文, 用对称密钥解开, 再用自己伪造证书的私钥**传给客户端。

第七步,客户端拿到**信息后,用公钥解开,验证HASH。握手过程正式完成,客户端与服务器端就这样建立了”信任“。

在之后的正常**通信过程中,Fiddler如何在服务器与客户端之间充当第三者呢?

服务器—>客户端:Fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次**, 发送给客户端。
客户端—>服务端:客户端用对称密钥**,被Fiddler截获后,解密获得明文。再次**,发送给服务器端。由于Fiddler一直拥有通信用对称密钥enc_key, 所以在整个HTTPS通信过程中信息对其透明。

4、HTTP和HTTPS协议区别?实现机有什么不同?
  1. http是超文本传输协议,信息是明文传输;https是具有安全性的ssl传输协议。
  2. http与https使用的是不同的连接方式,端口也一样,http默认端口是80;https默认端口是443;
  3. http连接状态比较简单,是无状态的;https协议是由ssl+http协议组成的可进行
传输、身份认证的网络协议。

6、在测试接口中怎么知道请求成功还是失败?
根据接口请求时接口的返回状态码来判断,状态码以4或5开头就可以视为请求失败

7、说出请求接口中常见的返回状态码?
1xx – 信息提示
2xx – 成功
3xx – 重定向
4xx – 客户端错误
5xx – 服务器错误(200.201.204.304.400.401.403.404.410.500.503)

9、怎么设计接口测试用例?
目的:测试接口的正确性和稳定性;
  原理:模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的过程;
  重点:检查数据的交换,传递和控制管理过程,还包括处理的次数;
  核心:持续集成是接口测试的核心;
  优点:为高复杂性的平台带来高效的缺陷监测和质量监督能力,平台越复杂,系统越庞大,接口测试的效果越明显(提高测试效率,提升用户体验,降低研发成本);
  用例设计重点:通常情况下主要测试最外层的两类接口:数据进入系统接口(调用外部系统的参数为本系统使用)和数据流出系统接口(验证系统处理后的数据是否正常);
  PS:设计用例时还需要注意外部接口提供给使用这些接口的外部用户什么功能,外部用户真正需要什么功能;

11、为什么要做接口测试?
因为不同端(前段,后端)的工作进度不一样,所以我们要针对最开始出来的接口,以及需要调用其他公司的(银行,支付宝,微信,qq等)
一些接口进行接口测试及验证数据,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前面实在太容易),需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。前后端传输、日志打印等信息是否**传输也是需要验证的,特别是涉及到用户的隐私信息,如身份证,银行卡等

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/188874.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java 服务器程序部署环境搭建

    java 服务器程序部署环境搭建1、安装JDK 右击我的电脑-属性-高级系统设置-高级-环境变量:系统变量:新建:CLASSPATH 变量值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;新建:JAVA_HOME 变量值为D:\Java\jdk1.8.0_40(就是你安装的JDK路径)找到Path,点击编辑,在变量值最前端添加;%JA

  • eigen库使用_eigen3

    eigen库使用_eigen3Eigen库的安装1.VisualStudio2017安装eigen库1.1下载eigen库1.2配置1.3运行测试1.VisualStudio2017安装eigen库1.1下载eigen库eigen官网下载地址找到自己需要的版本下载,我下载的是3.3.9,箭头指向的zip。解压缩得到文件eigen-3.3.9,放到自己想放置的路径下(后面会引用此处的路径)。1.2配置在VS2017中新建一个空项目,取名为“eigen_demo”。输入以下测试

    2022年10月19日
  • c++ uint32_t_int32和uint32

    c++ uint32_t_int32和uint32文章目录使用int64_t形式代替基本类型使用原因stdint.h源码int32_t和uint32_t的区别size_t在不同机器中定义不同:参考文档使用int64_t形式代替基本类型我们都知道,C语言的基本类型就char,short,int等。但是我们在看其他源码时经常碰到int32_t,int8_t这种形式的定义,他们是什么呢。其实他们就是基本类型的typedef重定义。也就是不同平台下,使用以下名称可以保证固定长度。1字节int8_t——char2字节int1

  • js中对数组进行遍历都有哪些方法_js遍历json对象

    js中对数组进行遍历都有哪些方法_js遍历json对象遍历有如下几种方式数组方法mapforEachfilterfindfindIndexeverysomereducereduceRight其他方法forforinforof数组方法map核心创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。不改变原数组返回值是一个新的数组lettestArr=[‘子项0′,’子项1′,’子项2’];letresultArr=t…

    2022年10月21日
  • 工具杂记-notepad++正则表达式匹配替换

    工具杂记-notepad++正则表达式匹配替换这里其实是这样的就是有时候我们建表不规范,导致idea自动生成的实体类有bug。get/set后面的字母为小写,这样但要使用反射的时候。就会出现问题。找不到这个方法。这里我们可以通过使用notepad++用正则表达式进行替换。这是一个很好的工具:这里可以替换文件夹里面所有文件。这里我以单个文件为例:如下点击repalceAll即可替换运行后结果如下:…

  • 几款.Net加密/加壳工具的比较

    几款.Net加密/加壳工具的比较前言  使用过.NET的程序员都知道,.NET是一个巨大的跨时代进步,它开发效率高、功能强、界面观、耐用、新的语言C#已经提交为行业规范、CLR共公运行库资源丰富,这所有的特点标志着它成为主流编程语言是必然的。     可是它也有一个缺点,那就是编译好的程序集可以完全反编译成源代码,这给一些不法份子提供了很好的机会,试想想,您辛苦的劳动成果就这样给了别人;所以如何保护我们的知识产

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号