Robot Framework导入Python模块后报“No keyword with name”错误如何解决
问题原因
- 资源文件导入路径错误:
test.robot存放在tests目录下,填写的Resource regression/regression.robot是相对tests目录寻址,找不到对应的资源文件,导致后续库导入逻辑未生效。 - 库导入路径错误:
regression.robot存放在resources/regression目录下,填写的Library libs/Test.py是相对当前文件所在目录寻址,找不到对应Python文件,库未成功导入,自然无法识别对应的关键字。
修复方案
- 修正
test.robot中的资源导入路径,替换为相对test.robot所在目录的正确路径:
*** Settings *** Resource ../resources/regression/regression.robot
- 修正
regression.robot中的库导入路径,替换为相对regression.robot所在目录的正确路径:
*** Settings *** Library ../../../libs/Test.py
如果要避免相对路径层级过多容易写错的问题,可以在运行测试时添加--pythonpath 你的项目根目录绝对路径参数,把项目根目录加入Python搜索路径,此时regression.robot中可以直接写Library libs/Test.py。
验证方法
运行测试时添加-L DEBUG参数,查看运行日志中是否存在资源导入、库导入失败的相关报错,可快速定位路径类问题。
内容的提问来源于stack exchange,提问作者Adarsh Haridas
相关产品推荐
相关产品推荐

