接口测试平台175: 并发用例底层

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 接口测试平台175: 并发用例底层

上节课我们写到了 header的完全处理结束。


   本节课继续开始。


   1. 拼接完整url

为什么要拼接?因为咱平台设计的是由host和路由两部分组成,所以要拼接后才能给requests方法调用。 两部分均由用户输入,一旦涉及到用户输入,我们就要考虑到用户按照规则和不按照规则的情况,比如Host结尾写了/ 结果路由开头又写了个/ 这样直接简单的拼接起来,就会导致/重复,变成:

   https://www.xxxxx.xxx//aaa/bbb/ccc

   所以我们要避免这情况,这里就要进行判断后拼接。

   ps: 这就是做成平台要额外考虑的事情,比之前我们写个自动化脚本要难一点。

image.png

如图,我们的三种判断后,最终的url就是完整且正确的url。

   至此,我们的url经过全局变量替换,经过公共域名替换,经过拼接后最终实现完全体。


   2. 登录态融合

   还记得我们的登录态设计么?通俗点就是在这个步骤运行前是否要先运行登录态接口来获取token等参数并加入到本步骤接口的请求头/体中的设计。

   虽然很先进,但是实现起来并不简单。

   第一步,从step中拿出登录态开关。

image.png


   第二步,根据开关进行判断,若为no,则设置一个空的login_res字典,若为yes,则按步骤继续写:

image.png

   现在,我们要考虑这个else,也就是需要调用登录态接口:

   首先,要找拿到这个用例的case_id,为什么呢?因为我们要靠这个用例id来判断这一条大用例,里面的众多步骤接口,是否已经有接口调用了登录态接口了,如果已经调用过,我们这里直接用即可,没必要再次调用。如果没有调用过,我们再进行首次调用。

   这个逻辑我们在之前的run_case.py中已经使用过,这里我们再次写出来:

   (不要着急写,后面有源码复制版本)

image.png

   其中的具体步骤我都用注释写了。


   然后我们肯定拿到了这个login_res字典,它存放着所有登录态要写入给当前步骤的字段和对应的值。


   可能是空的,也可能有东西。有的东西是之前用过直接拿的,有的则是重新生成的。


   我们接下来就是直接插入到本步骤的各个位置即可。因为我们不确定这个登录态到底应该插入到什么位置,让用户自己决定又很麻烦。本着参数宁可多传也不要少传的原则,我们干脆一劳永逸,全都加。


   先加url和header:

   url后接函数必须用?开头,所以我们要先判断一下是否已经存在?

image.png

   

   好了,其实这里应该再加到请求体中的,但是请求体又分为很多格式,这个写起来就更麻烦了,而且大多数我所知的登录态,都是放到url或者header即可,若小伙伴公司的接口必须要放在请求体中,那么可以私信我(qingwanjianhua),我再继续加上这部分代码。


   到这里,我们的登录态加入功能就告一段落。


   接下来是加密策略:

   Ps:有的小伙伴都听累了,心说为什么要这么麻烦再讲一遍,代码95%都是直接复制run_Case.py的吧。


   这里解释下,是的,代码大多直接复制粘贴即可。但是这里为了再一次带大家复习这个复杂的环节,所以作者仍然选择再写一遍。


   加密策略:

   先判断加密开关是否是yes,若是,则把我们的url,请求体等参数传给我们之前写好的加密函数。即可,代码量并不多。

image.png

   

   好了,本节课暂时到这里结束,希望大家年前最后一周好好努力工作哦~


相关文章
|
9天前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
15天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
49 3
|
18天前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
82 1
|
1月前
|
人工智能 监控 测试技术
云应用开发平台测试
云应用开发平台测试
54 2
|
18天前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
44 0
|
1月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
67 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
250 7
Jmeter实现WebSocket协议的接口测试方法
|
2月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
260 3
快速上手|HTTP 接口功能自动化测试
|
2月前
|
JavaScript 前端开发 测试技术
ChatGPT与接口测试
ChatGPT与接口测试,测试通过
49 5
|
1月前
|
JavaScript 前端开发 API
vue尚品汇商城项目-day02【9.Home组件拆分+10.postman测试接口】
vue尚品汇商城项目-day02【9.Home组件拆分+10.postman测试接口】
41 0
下一篇
无影云桌面