前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 实现 dubbo 协议接口自动化测试

Python 实现 dubbo 协议接口自动化测试

作者头像
Wu_Candy
发布2022-07-05 14:21:52
5190
发布2022-07-05 14:21:52
举报
文章被收录于专栏:无量测试之道无量测试之道

前言

python 语言也可以实现对 dubbo协议的接口进行调用与测试,可以使用 python+hessian 结合的方式,也可以使用 python+telnet 结合的方式模拟命令行的模式来实现对 dubbo 协议接口的测试;

网上关于 python+hessian 协议的博客比较多,本人试了试,终究是没有在本机上测试通过,所以选择了 python+telnet 的方法在编译器里实现了 python 源生代码对 dubbo 接口调用测试;

实现源码

代码详解

1、代码讲解第20行:

num20行:"invoke {0}{1}()".format(service_name,method_name)

(1)、invoke为调用dubbo接口的命令名称;

(2)、{0}为invoke命令后需要接的第一个参数,它的值将由传入进来的service_name取代,一般是传入服务名称,这里的写法只是为了占位;

(3)、{1}为invoke命令后需要接的第二个参数,它的值将由传入进来的method_name取代,一般是传入被调用的方法名称,这里的写法只是为了占位;

(4)、()为invoke命令后需要接的第三个参数,此处的例子表示的是这个dubbo服务被调用的方法,是不需要传入参数就能直接调用成功的,虽然不需要传入参数,但是必需写上()

(5)、问题:如果被调用的dubbo服务的方法需要传入对应的参数,怎么处理呢?

答:num20行代码改写为:"invoke {0}{1}({2})".format(service_name,method_name,param_data),需要在第三个参数处添加占位符,并在调用该方法时传入对应的参数,一般是key:value格式的参数,即python中的字典格式的数据;

2、代码讲解第28行:

conn = Dubbo('serviceIp', port)

(1).serviceIp:被调用服务所属的IP地址;

(2).port:被调用服务所对应的可访问的外部暴露的端口;

注意:如果端口号为内部端口,这种方式调用会报错。

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

本文分享自 无量测试之道 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档