如何用Python创建Robot测试用例可用的自定义关键字(非资源文件)
Python编写Robot Framework可识别关键字的解决方法
代码修正与规范
你的代码框架没问题,但需要调整细节确保Robot能识别:
修正后的代码示例
from robot.api import logger from robot.libraries.BuiltIn import BuiltIn from robot.api.deco import library, keyword # 为库添加必要配置,scope控制实例生命周期 @library(scope="GLOBAL", version="1.0") class MyClass: def __init__(self): # 初始化BuiltIn库方便调用内置关键字 self.builtin = BuiltIn() # 可通过name参数自定义关键字显示名称,不指定则用方法名(会自动转为空格分隔的格式) @keyword(name="执行自定义操作") def class_method(self): logger.info("自定义关键字开始执行") # 示例:调用内置关键字打印内容 self.builtin.log_to_console("这是Python编写的自定义关键字") # 这里添加你的业务逻辑代码
关键配置步骤
- 文件命名:将Python文件保存为
my_keywords.py(避免特殊字符、中文,确保文件名符合Python模块规范) - 路径配置:确保文件所在目录在Robot的搜索范围内:
- 最简单的方式是把Python文件和Robot测试用例放在同一目录
- 或者执行测试时通过
--pythonpath参数指定文件路径,比如:robot --pythonpath /path/to/your/python/files test_case.robot
- 测试用例中导入:在Robot用例的
Settings部分添加库引用:
*** Settings *** Library my_keywords.py
调用自定义关键字
在Robot测试用例中直接使用关键字名称即可:
*** Test Cases *** 测试自定义关键字 执行自定义操作
常见排查点
- 检查装饰器拼写:确保
@library和@keyword正确导入且拼写无误 - 确认Python文件没有语法错误:执行
python my_keywords.py检查是否报错 - 验证Robot是否能找到库:在测试用例中用
Import Library关键字手动导入,查看报错信息定位问题
内容的提问来源于stack exchange,提问作者Sabrina
相关产品推荐
相关产品推荐

