Tips:
关键字大小写不敏感
测试库搜索路径和python程序一致,sys.path
01:python创建关键字,在RF中导入
python文件(mylib3.py)
import os,sys def opencalc(): os.system('calc') def openmaspaint(): os.system('mspaint') def printarg(*args,**kwargs): if len(args)==0: print('NO args') else: print('args are') for one in args: print(repr(one)) print('----') def returnlist(): return [1,2,3,4] def returndict(): return { 'ele1':'male', 'ele2':'female' } def testloop(): list1=[1,2,3] for i in range(9): print(i) if __name__ == '__main__': openmaspaint()
在RF使用python关键字(同一个目录下)
*** Settings *** Library mylib3 *** Test Cases *** 测试1 opencalc
此时报错:
在path路径下找导入的模块,此时没有mylib3
手动添加path命令:
把当前模块加入到搜索路径中,. 表示当前目录
02:python创建的关键字,带有参数, 传入RF中
*** Settings *** Library mylib3 *** Test Cases *** 测试1 printarg hello printarg 123 #结果显示‘123’
报告结果
怎样显示整数类型呢
*** Settings *** Library mylib3 *** Test Cases *** 测试1 printarg hello ①#借助关键字返回整数 ${var} convert to integer 123 printarg ${var} ②#括号内部会根据python语法进行计算 ${var} convert to integer 123 printarg ${123} 结果 123 ③或者 printarg ${123+123} 结果246 返回列表 ${list} returnlist printarg ${list} 结果 [1,2,3,4] #列表取值 {list} returnlist printarg ${list[0]} 结果 1 返回字典-取值 ${dict} returndict printarg ${dict['elel']}
结果
03:传入list和dict类型
#用list类型进行传参--将列表内部的元素展开进行传递,传递的是多个
printarg @{list}
#传值
printarg @{list}[0]
结果:
#用dict类型进行传参--将字典内部的键值对展开进行传递,传递的是多个
printarg &{list}
#取值
printarg &{list}[elel]--不加引号
结果:
总结
04:循环
RF用 :FOR来实现循环
遍历list变量
IN RANGE 的用法
${list} create list 猫 狗 猪
FOR ${animal} IN @{list}
log to console ${animal}
log to console testloop
END #循环体结束标志
log to console 循环外面
#循环多次
FOR ${animal} IN RANGE 10
05:放在不同目录下