robot framework 学习心得

安装

安装就不着重讲了,网上很多,推荐使用(包含python环境):

https://www.ibm.com/developerworks/cn/opensource/os-cn-robot-framework/

websocket长连接区分连接问题

安装python库

1.pip install websocket-client

2.sudo python setup.py install

背景介绍

本次测试主要针对websocket服务器测试,但是项目中存在订阅功能,那么在单个测试用例中必然存在两个连接,但是目前网上的搜到能直接在robot中使用的websocket python库十分不完善,所以自己研究了段时间python.

自己写了一套能够在测试用例中,每个User Keyword能够直接绑定到某个连接的做法.

  • python库:
#!/usr/bin/env python
#encoding: utf-8
from websocket import create_connection

def connect(URL,header=None):
	ws = create_connection(URL,header=header)
	return ws
def call_attr(func,method,arg=None):
	if arg:
		result = getattr(func,method)(arg)
	else:
		result = getattr(func,method)()
	return result

备注:方法一见名知意,建立了一个websocket连接,并将该连接返回,在robot中被当做变量传递; 方法二第一个func参数实际传递的就是第一个方法中的ws(websocket连接),第二个method参数为这个连接(这里可以把这个连接看为一个对象实例)调用的方法,第三个arg为method方法中需要传递的参数.

  • 测试用例使用:
${conn1}	connect	${url}	${dict}
Call Attr	${conn1}	send	${sendMessage:订阅消息}
Call Attr	${conn1}	settimeout	${timeout}
${result}	Call Attr	${conn1}	recv
${conn2}	connect	${url}/dealer	None
Call Attr	${conn2}	send	${sendMessage:修改消息}
${result}	Call Attr	${conn2}	recv
${result}	Call Attr	${conn1}	recv

备注:其中${conn1}为订阅方,在被订阅的topic有任何变化,订阅方都会收到服务器的推送消息. ${conn2}为修改方,修改了${conn1}订阅的topic数据.

自定义python库的引用问题

建议在测试用例文件夹中建立一个Lib文件夹,自定义的python可以书写在该目录下,倘若测试用例文件与Lib同级,引用则是:Lib/xxx.py,倘若在Lib下一级寻址则为"../Lib/xxx.py";

总结

其他事情技术含量到不是太高,都是一些繁琐和重复的工作,多查google,多看F5,不行就自己写python,很多事情还是能够解决的,与君共勉~~~

对你有用记得点赞

对你有用记得点赞

对你有用记得点赞

最重要的事情说三遍

转载于:https://my.oschina.net/Java4jiong/blog/807171

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值