Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >接口测试平台代码实现155:加密算法开关

接口测试平台代码实现155:加密算法开关

作者头像
我去热饭
发布于 2022-05-19 02:19:24
发布于 2022-05-19 02:19:24
3260
举报
文章被收录于专栏:测试开发干货测试开发干货

多亏榜一大哥提醒,加密算法居然漏掉了开关功能,榜一大哥也随即在测试开发水货上更新了如何加入开关的文章,欢迎收看。

说到开关,我们不要着急上去就加开关,先要想好以下几个问题 再动手。

1:开关都在哪里:

目前,我们的加密算法应用到了普通接口调试,登录态接口调试,登录态接口被调用,用例运行 ,这几个函数中。那么他们的开关是否是一个呢?显然不是。

2:开关在数据库的字段:

我们打开models.py,可以看到关键字:sign的字段,出现在普通接口表,用例步骤表,登录态接口表中。

3:开关状态从哪获取:

在不同的函数中,均在页面的选择上出现开关,但是,运行起来的原理是不同的。普通接口调试和登录态接口调试 是直接从页面获取开关状态,而登录态接口被调用和用例步骤运行 则是从数据库中拿到开关状态。

4:开关在代码中如何使用?

当然是用if判断开关状态了。

好,想好了这些问题,我们的思路就变得清晰起来,看似麻烦的事情也简单明了,那么就开始实现吧。

一,普通接口调试:Api_send() ,这里从页面获取开关状态

在原有的加密策略部分代码上加入 获取开关状态和 判断逻辑:

二,登录态接口调试:project_login_send(),这里从页面获取开关状态

三,登录态被调用:project_login_send_for_other(),这里从数据库拿开关状态

四,用例步骤运行,在run_case.py中,这里从数据库拿开关状态

好了各位,到此,加密部分算是结束了。欢迎各位踊跃提出宝贵的建议和bug反馈哦~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发干货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
接口测试平台代码实现105:登录态接口
本节开始之前 要纠正一个bug,这个bug算是作者挖的一个小坑,在graphql的实际发送请求的代码中,作者对variables的求值代码不小心写成了int,其实应该用eval,因为这一个错误后其他代码全是复制粘贴,所以导致首页/接口调试/用例执行 三处均存在这个bug,好在榜一大哥使用中发现并给予纠正。
我去热饭
2022/05/19
8660
接口测试平台代码实现105:登录态接口
接口测试平台代码实现120:cookie持久化-3
我们先来看 被调用的登陆态接口,这个函数之前是去发送请求,然后返回提取的字段,交给Api_send。
我去热饭
2022/05/19
2530
接口测试平台代码实现120:cookie持久化-3
接口测试平台代码实现112:登录态接口-8
本节我们要搞定普通接口调试时自动加入登陆态接口返回参数到请求头/体中的后台实现。
我去热饭
2022/05/19
4480
接口测试平台代码实现112:登录态接口-8
接口测试平台代码实现158:私有client证书设置三
本节课 我们要给每个接口,都加入一个选项,类似于之前 是否加入登录态,是否加密 这种选项,名字叫做:“是否加证书”
我去热饭
2022/05/19
2140
接口测试平台代码实现158:私有client证书设置三
接口测试平台代码实现148:加密算法的设计与实现
我会坦然的回答: 结束?结束了我还水什么?结束了你在公司部署好之后吃老本么?下季度OKR怎么办?什么APP 什么系统不是天天迭代 天天有新需求 新设计,都结束了,程序员去要饭么?
我去热饭
2022/05/19
3190
接口测试平台代码实现148:加密算法的设计与实现
接口测试平台代码实现152:加密算法继续更新
这里要注意,因为我们后添加的这个字段,所有之前的数据,很可能这里都是空字符串或None。
我去热饭
2022/05/19
2550
接口测试平台代码实现152:加密算法继续更新
接口测试平台代码实现160:私有client证书设置五
因为之后我们可能还会增加这种请求字段,到时候就照着这俩章内容抄一抄,就不用担心出bug或者漏掉某些代码部分。
我去热饭
2022/05/19
2650
接口测试平台代码实现160:私有client证书设置五
接口测试平台代码实现103:GraphQL-3
上节我们搞定了首页的GraphQL请求功能,但是似乎漏掉了一个功能:显示。也就是当我点击左侧请求记录的时候,右侧需要显示对应的请求数据,但是很显然我们遗漏了GraphQL这个请求体类型。
我去热饭
2022/05/19
2350
接口测试平台代码实现103:GraphQL-3
接口测试平台代码实现107:登录态接口-3
首先先改正一下 榜一大哥提出的bug,就是当选择完公共请求头后取消选择,然后再请求就会报错的问题:
我去热饭
2022/05/19
5360
接口测试平台代码实现107:登录态接口-3
接口测试平台代码实现78: 多接口用例-18
我们需要先思考一下。如何进行提取和持久化的设计,也就是说不能光提取就行,需要存放到哪,以便后续接口进行调用:
我去热饭
2022/05/19
2820
接口测试平台代码实现78: 多接口用例-18
接口测试平台代码实现149:加密算法的增删改查
我们目前要做的加密算法是一个实体,或者说一个表达式。那么它就自然而然的要考虑下面几点:
我去热饭
2022/05/19
3430
接口测试平台代码实现149:加密算法的增删改查
接口测试平台代码实现141: 项目大用例干扰bug解决2
3. 目前项目A尚未运行完,项目B开始运行,就会把login_res这个变量给重新赋值,导致项目A后续的步骤发觉login_res已经不是自己的项目id后,就会重新生成新的,然后项目B的后续步骤再次赋值,发生俩个项目甚至多个项目互相抢这个变量的情况。
我去热饭
2022/05/19
2910
接口测试平台代码实现141: 项目大用例干扰bug解决2
接口测试平台代码实现126: 全局变量-5
很简单,我们告诉后台要增加一个空白的变量,那就什么都不用传。但是这里我们要引入一个比较绕的注意点:那就是,变量所需用户的id,怎么传。
我去热饭
2022/05/19
2570
接口测试平台代码实现126: 全局变量-5
接口测试平台代码实现130: 全局变量-9
本文开始,全局变量 要正式进入 复杂的后台实现了,当然如果能跟到这里,那么也应该没什么难度。
我去热饭
2022/05/19
2960
接口测试平台代码实现153:加密算法更新
这个bug是什么意思呢?就是当我们删除一个数据时,结果报错说,返回的必须是str 而非None。这个问题的原因在于我们的models.py中的 返回展示部分:
我去热饭
2022/05/19
2390
接口测试平台代码实现153:加密算法更新
接口测试平台代码实现92: 全局请求头-7
现在我们有了这个存放公共请求头的字段了,那么就去前端的P_cases.html中找到保存步骤step的js函数,给它加上公共请求头吧:
我去热饭
2022/05/19
4170
接口测试平台代码实现92: 全局请求头-7
接口测试平台代码实现153:加密算法继续实现
(注意调用位置一定要放到 替换全局变量的后面!最好是在真正发送请求代码部分之前紧贴!)
我去热饭
2022/05/19
1880
接口测试平台代码实现153:加密算法继续实现
接口测试平台代码实现110:登录态接口-6
我们上节课,前端已经成功拿到了 登陆态接口调试发送的运行结果,也就是返回值 和 提取结果。
我去热饭
2022/05/19
3100
接口测试平台代码实现110:登录态接口-6
接口测试平台代码实现137: 小bug集中修复
有bug反馈证明 有人在用,在学。这点很好。当然随着 难度不断的提升,一些bug也并不是我故意埋的了。感谢反馈的小伙伴等人!
我去热饭
2022/05/19
2460
接口测试平台代码实现137: 小bug集中修复
接口测试平台代码实现151:加密算法后台函数实现
好的,在这大家也跟了150期了,对于这个算法的实现,能否知道从哪下手呢?觉得难么?
我去热饭
2022/05/19
2290
推荐阅读
相关推荐
接口测试平台代码实现105:登录态接口
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档