我想在Robot Framework中运行测试.
我还想为机器人框架测试提供以下类型的目录结构:
根目录
图书馆
Library.py
资源文件
Resource.txt
测试
test_1.txt
test_2.txt
或类似的规定.但是,我不知道如何编写我的测试,以便他们可以访问我的库和资源文件.例如,如何从Tests\test_1.txt导入Libraries\Library.py.
什么是最好的方法来解决这个问题?
是否存在父目录中访问文件的语法?
我应该在每个测试文件中导入资源和库文件,还是有办法只执行一次?
Robot支持相对导入.您可以使用它..
来表示目录的父级.在你的例子中,你会这样做:
*** Settings *** | Resource | ../Resource Files/Resource.txt | Library | ../Libraries/Library.py
您可以在设置表中使用变量,这样就可以定义一个指向存储库根目录的变量.您可以将此变量用于所有导入.例如:
*** Settings *** | Resource | ${ROOT}/Resource Files/Resource.txt | Library | ${ROOT}/Libraries/Library.py
您可以使用以下--variable
选项在命令行上设置此变量:
$ pybot --variable ROOT /path/to/root tests
机器人自动定义一个${EXECDIR}
我们用来代替${ROOT}
布莱恩答案的变量.
优点:
系统无关
缺点:
可能取决于您如何调用PyBot(在命令提示符下工作目录,或在RIDE中打开哪个文件夹)