上述几个问题 也很久了 第一点 我的做法就算不传附件了
不知道什么时候能把 api 文档补齐
可以看看社区内多数人比较推荐的极客时间 高楼- 性能测试实战 30 讲
顺便请问下如何退出社团
按照贴子操作的... 上面的二维码 只是个示例
期待后续
e, 之前个人的做法是直接采用 for 循环,循环里面执行请求接口的方法 感觉方式欠佳,方便透露下您的做法嘛
楼主请问用例执行是怎么实现的呢
好的,谢谢
谢谢建议
抱歉,个人想先试试避免后面用,像之前的场景基本老大也是说直接压,然后完了 问 多少并发,同时当时的响应时间等指标情况,属于纯小白...
那是在 rps 不上去,响应时间增加时的 用户数可直接说是并发数嘛?
期待开源 ing
感谢
谢谢回复,分享,大体明白了
mitmproxy 功能确实强大,部署成一个服务?可以分享下 具体实现思路嘛,所以 mitmproxy 服务会一直开着,然后需要代理的时候本机配置代理地址,mitmproxy 服务把抓到的数据入库?但是 项目去查 没太明白,抓到的不是只有请求类的数据嘛。。
门票有限.....
....在社区学习并分享,其实是参考了 很多其他同行的代码.
谢谢 刚才的问题已经解决了
@chenhengjie123 @Lihuazhang 请问这是什么情况
也许会有 bug,见谅 递归换值
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
@Project: py-gql-fast-test-api
@File: handle.py
@Author: zy7y
@Time: 2021/3/31 16:48
@Blog: https://www.cnblogs.com/zy7y
@Github: https://gitee.com/zy7y
@Desc: 处理方法
"""
class Handle:
var_pool = {}
@staticmethod
def set_var(key: object, value: object):
"""存变量"""
Handle.var_pool[key] = value
@staticmethod
def get_var(key: object, default: object = None):
"""取变量"""
return Handle.var_pool.get(key, object)
@staticmethod
def handle_var_list(value: list):
"""
处理参数替换~ 类型是list的逻辑
"""
for index, liv in enumerate(value):
if isinstance(liv, str) and liv[:2] == '${' and liv[-1] == '}':
# 获得key部分内容
liv = liv[2:-1]
# 取到key对应的value,复制给当前下标
value[index] = Handle.get_var(liv)
elif isinstance(liv, list):
# 如果 子元素还是 list 就再迭代list
Handle.handle_var_list(liv)
elif isinstance(liv, dict):
# 如果子元素是 dict 就再迭代字典
Handle.handle_var(liv)
@staticmethod
def handle_var(var: dict) -> dict:
"""处理自定义参数类型"""
for key, value in var.items():
# 如果是字典就 迭代字典
if isinstance(value, dict):
Handle.handle_var(value)
# 如果是list 就迭代list, 递归 list处理方法
elif isinstance(value, list):
Handle.handle_var_list(value)
# 如果是str 就替换
elif isinstance(value, str) and value[:2] == '${' and value[-1] == '}':
# 获得key部分内容
value = value[2:-1]
# 取到key对应的value
var[key] = Handle.get_var(value)
return var
if __name__ == '__main__':
Handle.var_pool = {"name": "att", "age": 18, "height": 17.8}
# 需要处理的字典
data = {
# 字典 提取
"name": "${name}",
# 字典嵌套字典提取
"info": {"${name}": ["${age}", "${height}"]},
"lists": ["${name}", ["${age}", "${height}"], {"name": "${name}"}]
}
print(Handle.handle_var(data))
应该是递归。这里面你当然也可以处理自定义函数就能解决这个类型的问题了
这样也有个 bug 就是字符串类型的 123456 会被直接转成数字,另外字典迭代我发的帖子中有写过不过比较乱而且在字典嵌套列表再嵌套列表的时候无法替换