Robot Framework之python脚本调用

简介: 前言喜欢使用RF的原因之一就是能自己定义关键字,这篇就简单说下如何创建系统关键字,先来个最简单的,求比较两个数的大小一、建立库文件假设python的安装路径在D:/下面(作者是放在D:\python\python27)1、在D:\python\...

前言

喜欢使用RF的原因之一就是能自己定义关键字,这篇就简单说下如何创建系统关键字,先来个最简单的,求比较两个数的大小

一、建立库文件

假设python的安装路径在D:/下面(作者是放在D:\python\python27)

1、在D:\python\python27\Lib\site-packages\ 建立库文件文件夹 MyLibrary

2、在MyLibrary 内建立 mytool.py 文件和 __init__.py 文件

如: 这个文件里面写自己需要穿件的关键字既方法,如下代码里面有一个比较两参数大小的方法,在Robot Framework 里面将以关键字的方式使用

img_9698daf53baa3bd55923d30dcd759681.png
mytool.py

如下模板,注意类名要与库文件夹名称一致

img_d97f0aaa6ad103f0f10cd49a53b6ddd3.png
__init__.py

该文件中第一句,是导入deviceDriver.py文件中DeviceDriver类;第二句,创建DeviceDriver的派生类;第三句,把deviceDriver集成到robot framework!

二、在Robot Framework中导入库文件

1、库文件的导入:

选择套件名称,点击右边面包的Library

img_70763f3e1e2bc656a26b166a23c6e0a3.png
点击Library

2、点击右边的面板展示

img_3fe1bcd1f10ce97cbab55d0a73396575.png
输入库的名称

3.点击OK保存并查看导入的库文件

img_f99ac7359201e0d02cee6bb1a00d44e3.png
成功导入库文件

三、导入失败排查分析

1、若是做elenium web自动化测试,我们则需要导入selenium2library,以导入selenium2library为例,在弹窗内填写selenium2library点击OK按钮,RIDE则会自动去python目录下去搜寻库,若是不存在或者库有错,导入则不成功,如下图现在红色

img_e3e8a0b908db04f18cac96034692ee60.png
导入失败显示

2、查看错误原因

img_e64b94251aefe80a17d597607b4cc606.png
查看 错误log

四、导入使用库文件

1、导入完成之后,我们可以在Ride中键盘按F5到Search Keywords , source选择我们刚刚导入的库,我们会在面板中看见我们库中所有的方法的介绍

img_ef7069eac084a70993a90033f09cbba4.png
库方法介绍

2、使用关键字

img_12c33e21a40c58e7335f9684f7e8e3d9.png
使用关键字

3、运行结果

img_7015da7a1e619fe02bed3451a1380954.png
运行结果

4、report报告:

img_a93aa823b37b083b9147b586024515e1.png
报告目录
img_b74161a56d4bff2b40d209fa3b2e680e.png
report报告

五、问题总结

以下自己遇到的一些问题的debug 

1、尽量在文件的开头加上:# -- coding: utf-8 --   

因为python默认编码是ascii,所以如果代码中有(),或中文等等符号,会报错,提示编码不正确

2、如果写的代码里边有中文,尽量在文件开头加上以下3行代码

import  sys 

reload(sys)  

sys.setdefaultencoding("utf-8")

3、如果在初始化函数中,定义了形参。则必须在导入库的时候,也要提供对应的参数。 不然会提示少给了变量的报错。

def __init__(self,a,b):pass

4、修改代码后,及时把对应的.pyc文件删除并且重启下robotframework 后,再导入。

5、如果还是有其他的报错,请点击Tools→View RIDE log ,查看并debug。

目录
相关文章
|
18天前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
26 1
|
2月前
|
Web App开发 数据采集 自然语言处理
python脚本抢各大平台大额优惠卷
python脚本抢各大平台大额优惠卷
47 0
|
7天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
14天前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
14天前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
|
22天前
|
XML Shell Linux
性能工具之 JMeter 使用 Python 脚本快速执行
性能工具之 JMeter 使用 Python 脚本快速执行
37 1
性能工具之 JMeter 使用 Python 脚本快速执行
|
1月前
|
数据采集 测试技术 Python
Python自动化脚本的魅力与实践
Python自动化脚本的魅力与实践
47 0
|
1月前
|
数据安全/隐私保护 Python
使用Python脚本实现图片合成PDF功能
使用Python脚本实现图片合成PDF功能
26 0
|
1月前
|
安全 数据安全/隐私保护 开发者
如何使用Pyarmor保护你的Python脚本
如何使用Pyarmor保护你的Python脚本
38 0
|
1月前
|
数据处理 Python
Python自动化脚本
Python自动化脚本
20 0