使用目录结构进行机器人框架测试

Lit*_* Py 6 testing robotframework

我想在Robot Framework中运行测试.

我还想为机器人框架测试提供以下类型的目录结构:

  • 根目录
    • 图书馆
      • Library.py
    • 资源文件
      • Resource.txt
    • 测试
      • test_1.txt
      • test_2.txt

或类似的规定.但是,我不知道如何编写我的测试,以便他们可以访问我的库和资源文件.例如,如何从Tests\test_1.txt导入Libraries\Library.py.

什么是最好的方法来解决这个问题?
是否存在父目录中访问文件的语法?
我应该在每个测试文件中导入资源和库文件,还是有办法只执行一次?

Ed *_*nin 10

机器人自动定义一个${EXECDIR}我们用来代替${ROOT}布莱恩答案的变量.

优点:

  • 系统无关

缺点:

  • 可能取决于您如何调用PyBot(在命令提示符下工作目录,或在RIDE中打开哪个文件夹)


Bry*_*ley 7

使用相对进口

Robot支持相对导入.您可以使用它..来表示目录的父级.在你的例子中,你会这样做:

*** Settings ***
| Resource | ../Resource Files/Resource.txt
| Library  | ../Libraries/Library.py
Run Code Online (Sandbox Code Playgroud)

在变量中定义根

您可以在设置表中使用变量,这样就可以定义一个指向存储库根目录的变量.您可以将此变量用于所有导入.例如:

*** Settings ***
| Resource | ${ROOT}/Resource Files/Resource.txt
| Library  | ${ROOT}/Libraries/Library.py
Run Code Online (Sandbox Code Playgroud)

您可以使用以下--variable选项在命令行上设置此变量:

$ pybot --variable ROOT /path/to/root tests
Run Code Online (Sandbox Code Playgroud)