接口测试 grpc 接口有什么办法可以像类似 http 接口一样调用或者其他比较方便自动化的方法。

TD · 2021年08月14日 · 最后由 yoyomei 回复于 2022年08月23日 · 2750 次阅读

目前我们底层服务有通过 grpc 接口的形式提供或者暴露服务,测试要测这个接口通常需要使用开发 IDE(如 Eclipse 等)环境来进行 grpc 接口的调用测试。对于不太接触底层代码级别的测试人员来说,学习和熟悉 IDE 及 java 语言则需要较大时间和精力投入,有没有什么办法可以方便使用 Python 直接调用的?比如类似之前 dubbo 泛化调用一样,提供一个接口出来传方法,接口,参数,参数类型这样,直接调用的?方便实现自动化,最好是 Python 可以调用的。

共收到 12 条回复 时间 点赞

bloomRPC GUI 工具,导入 pb 协议既可使用

TD #2 · 2021年08月15日 Author
重来看雨 回复

这个可以外部接口调用的吗?因为我们要接入到自动化里面

3楼 已删除
TD · #4 · 2021年08月15日 Author
仅楼主可见
TD 回复

不能。自动化就代码实现呗

java 的话,反射可以满足你的想法

TD #7 · 2021年08月16日 Author
重来看雨 回复

哈哈哈,好的,代码怎么实现呢,这个有参考吗?

TD #8 · 2021年08月16日 Author
递归思念 回复

能具体一点吗?要怎么实现?

TD 回复

proto 文件转成 jar 包,然后通过类名使用反射生成 stub 实例,然后解析 method,参数用 json 字符串输入。说起来很简单,但是如果你不会,就会不知所云。建议:第一步,写一个正常的 grpc 调用过程(不包含反射);第二步,学习反射(用来解耦 grpc stub 依赖);第三步,把第一步的调用过程用反射来实现,完事。

TD 回复

如果是调试,milkman 解决你的问题
但是做自动化,理论上通过 grpc 的 ServerReflection 来获取 proto 文件之后,也能实现

python 可以,把 pb 文件转化成.py 文件,调接口就跟调函数一样简单

TD 回复

可以定义成公共的类/方法,然后请求时调用。

jmter postman

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册