如何在机器人框架中导入具有常用关键字的文件?

jot*_*ken 12 testing robotframework

在机器人框架中,我有一个这样的测试套件:

test-suite/
  ??? Common.robot
  ??? TestCaseA.robot
  ??? TestCaseB.robot
Run Code Online (Sandbox Code Playgroud)

该文件Common.robot定义了两个TestCaseA.robot和将使用的一些关键字TestCaseB.robot.在其他语言Common.robot中称为库,但尝试像这样导入它

*** Settings ***
Library         Commons
Run Code Online (Sandbox Code Playgroud)

或者那样

*** Settings ***
Library         Commons.robot
Run Code Online (Sandbox Code Playgroud)

导致错误.

[ ERROR ] Error in file '[...]/TestCaseA.robot': Importing test library 'Commons' failed: ImportError: No module named Commons
Run Code Online (Sandbox Code Playgroud)

该关键字Library似乎仅适用于低级别测试库.我相信还有另一种方式.用户定义的库如何包含在机器人框架中?

小智 17

如果Common.robot是具有机器人框架关键字的纯文本文件或制表符分隔文件,则应将其导入Settings表中.在机器人框架中,具有共享关键字的文件称为资源文件.

*** Settings ***
Resource      Common.robot
Run Code Online (Sandbox Code Playgroud)

但是,如果它是一个具有共享关键字的python文件,则它应该被资源化为库

*** Settings ***
Library      Common.py
Run Code Online (Sandbox Code Playgroud)

请注意,在这两种情况下都必须指定完整的文件名.