robot framework--扩展关键字
如何作为导入python文件(python模块)
一种方法是放入到python的安装路径里,就像robotframework 的seleniumlibrary库一样,这种方法有个弊端,如果你没有对robotframework进行二次开发,整个安装环境依赖进行打包,则每次部署环境时,都需要重新把你写的库放一遍,现在介绍另一种方法,就和你的代码放一起
命名规则
python模块的文件名就是库名,如果你的python模块里是一个类,则类名要和文件名保持一致,不然你的扩展关键字,robotframework识别不了,就会报错无法使用 例如 我写了一个测试库,设置浏览器headless模式如何设置下载路径
文件名和类名保持一致
导入使用
在和这个python库同级目录下,我创建了一个robot资源文件,来引用这个python库
注:因为是同级目录,所以导入的时候没有带路径信息,如果没在同级目录,得把相对路径加上 如果robot语法不是很熟悉,则可以通过robot-ride图形化界面去配置
点击那个library按钮,然后找到你的python文件导入保存即可
使用的时候,就像调用其他关键字一样,关键字名,参数, 写法要遵循robot语法 robot语法
这个方法的python源码
如果在pycharm里面,设置好robot的编辑环境,导入使用这些关键字,会给出提示,这样编码就非常友好
python库使用是否需要初始化的区别
以上例子,导入python库, 这个python init()方法不需要传参,所以直接导入使用即可 还有一种我们实现的python库,有时需要实例化之后才能使用,init()方法需要传参,这种在robot文件导入使用时,需要把实例化的参数也写进去
比如我写了一个操作文件库,需要先传一个文件进行实例化,才能调用其方法,在robot文件setting里我可以这样引入 library python库 参数列表
python源码
总结
以上导入方法都是基于路径法导入,重点是只能导入和模块名相同的类名,这个也是我在开头说的
转载自:https://juejin.cn/post/7031708201846308878