ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

API⾃动化测试(4)

2022-07-22 22:33:15  阅读:170  来源: 互联网

标签:HTTP HTTPS 动化 认证 newman SSL API 测试 客户端


postman生成测试报告

接口测试与UI测试(功能测试,UI的自动化测试)有什么区别?

1、接口测试更多测试的是客户端与后端之间的交互

2、接口测试也是可以完全的测试产品功能测试场景

UI测试:

1、页面的交互

2、页面的各种提示信息的验证

3、业务场景

 

PostMan生成测试报告有两种:

1、控制台的模式

2、HTML的测试报告 使用到一个工具newman

 

Node.js:前端的一个组件,主要可以使用它来开发异步的程序

搭建nodes环境 把node添加在path变量中

命令台输入node -v 验证

 

 

安装newman

npm install -g newman --register=https://registry.npm.taobao.porg

验证 newman -v

 

控制台导出报告

首先导出postman里面的测试用例到桌面上

 

 

 

 

在控制台输入命令 cd  desktop 进入桌面

然后在控制台输入命令 newman run 接口实战.postman_collection.json 导出报告

 

html测试报告

安装插件 npm install newman-reporter-html 这个不行就用下面的

npm install -g newman-reporter-html

 输入命令  newman run 接口实战.postman_collection.json -r html  生成的测试报告在桌面上

 

 

 

 

 

 

HTTPS

HTTP的协议它是存在缺陷的,这些缺陷主要为:      通信内容是明⽂,内容很可能被第三⽅获取到      不验证通信⽅的身份信息,容易被伪装      ⽆法证明请求头的完整性 基于HTTP存在这些缺陷,也就有了HTTPS的协议,我们可以把HTTPS可以汇总为:HTTPS=HTTP+加密+认证+完 整性保护。   基于这样⼀层的设计,相对来书还是⽐较安全的,HTTPS不是全新的协议,它只是HTTP的协议基础上新增SSL和 TLS。在前⾯中我们知道HTTP是和TCP直接通信,那么在HTTPS中,HTTP先和SSL通信,SSL再和TCP来进⾏通 信。  

HTTPS通信机制

具体流程为: 客户端通过发送Client Hello报⽂开始SSL通信。报⽂中包含客户端⽀持的SSL的指定版本、加密组件列表(算 法及密钥⻓度) 服务器进⾏SSL通信时会议Server Hello作为应答,在报⽂中包含SSL版本以及加密组件。 服务器发送Certificate报⽂。报⽂中包含公开密钥证书。 服务器发送Server Hello Done通知客户端,最初阶段的SSL握⼿协议结束。SSL第⼀次握⼿结束之后,客户端以Client Key Exchange报⽂作为回应。报⽂中包含了⼀段随机密码串,该报 ⽂⽤获取到的公开密钥进⾏加密。 客户端继续发送Change Cipher Spec,来通知服务器,此后的通信会采⽤Pre-master secret随机密码串加 密。 客户端发送Finished报⽂。此报⽂包含了连接⾄今全部报⽂的整体校验值(保证完整性) 服务器同样发送Change Cipher Spec报⽂ 服务器发送Finished报⽂。 服务器和客户端的Finished报⽂交换完毕后,SSL连接就算建⽴完成了 。通信会受到SSL的保护。从此处开始 进⾏应⽤层协议的通信。发送HTTP请求

HTTP认证体系

HTTP/1.1版本中,使⽤的认证⽅式具体为:

BASIC认证,也就是基本认证

DIGEST认证,也就是摘要认证

SSL客户端认证

FormBase认证,也就是基于表单认证

BASIC 基本认证采⽤Base-64编码⽅式,但是不是加密的处理⽅式。不需要附加任何信息可对其进⾏解码,那么在HTTP等 ⾮加密通信的线路上进⾏BSCIC认证的过程中,很容易被⼈进⾏获取信息,安全体系不够⾼。

 

 

 

1、接口文档是在哪里写的?

YAPI的平台

2、你抓包使用的是那个工具?

charles

3、如果给你一个服务测试,但是没有接口文档,此时你会?

找开发让开发这边讲一下服务的逻辑,以及服务提供的API以及API的相关信息(请求方法,请求参数,请求URL)

4、PostMan是怎么做API自动化测试的?

在postman中新建一个集合在里面写测试用例,然后导出利用newman生成html报告

5、PostMan中动态参数是怎么处理的?

定义一个全局变量 pm.environment.set("变量", 数据 ); pm.environment.get("变量"); 后面直接调用需要加{{}} 比如{{数据}}

 

 

标签:HTTP,HTTPS,动化,认证,newman,SSL,API,测试,客户端
来源: https://www.cnblogs.com/liulele123/p/16506844.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有