「这是我参加11月更文挑战的第3天,活动概况检查:2021最终一次更文挑战」运用robotframework时,自带的库提供的关键字总有不满足的时分,这时分就可以用python写一些类库,供robotframework调用,这个python文件里完成的办法就叫做扩展关键字
怎么作为导入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源码
总结
以上导入办法都是基于途径法导入,重点是只能导入和模块名相同的类名,这个也是我在最初说的