首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Robot Framework是否自动导入robot测试所在的当前目录?

Robot Framework是否自动导入robot测试所在的当前目录?
EN

Stack Overflow用户
提问于 2019-12-19 18:57:40
回答 2查看 196关注 0票数 1

Robot是否自动导入运行robot文件的目录(当前目录和子目录)?如果是,有没有办法避免这种情况?

例如,mytest.robot当前目录为/home/test/ mytest.bot,运行mytest.robot后,PYTHONPATH包含/home/test/

EN

回答 2

Stack Overflow用户

发布于 2019-12-19 21:30:48

机器人是否自动导入运行机器人文件的目录(当前目录和子目录)?

不,它自动导入的唯一东西是内置的关键字。Robot不会设置PYTHONPATH,除非您告诉它。

票数 0
EN

Stack Overflow用户

发布于 2019-12-20 10:56:23

正如下面的documentation中所解释的,

BuiltIn library是特殊的,因为它是自动使用的,因此它的关键字总是可用的。

虽然,RF文档没有提到任何关于自动加载目录的内容,但根据robot run documentation和实际的测试路径,他们正在使用和不使用pythonpath参数进行测试。

robot将通过加载文件并将加载的文件路径保存在PYTHONPATH中来开始执行测试文件(即使发生这种情况,它们也使用--PYTHONPATH),这就是您看到dir的原因。

摘录自下面提到的机器人框架代码库,

代码语言:javascript
运行
复制
${RUNNER DEFAULTS}
...               ${COMMON DEFAULTS}
...               --ConsoleMarkers OFF
...               --PYTHONPATH "${CURDIR}${/}..${/}testresources${/}testlibs"
...               --PYTHONPATH "${CURDIR}${/}..${/}testresources${/}listeners"

*** Keywords ***
Run Tests
    [Arguments]    ${options}=    ${sources}=    ${default options}=${RUNNER DEFAULTS}    ${output}=${OUTFILE}
    [Documentation]    *OUTDIR:* file://${OUTDIR} (regenerated for every run)
    ${result} =    Execute    ${INTERPRETER.runner}   ${options}    ${sources}    ${default options}
    Log Many    RC: ${result.rc}    STDERR:\n${result.stderr}    STDOUT:\n${result.stdout}
    Process Output    ${output}
    [Return]    ${result}

机器人是否自动导入运行机器人文件的目录(当前目录和子目录)?如果是,有没有办法避免这种情况?

即使根据代码,答案也是“不”。就更改此行为而言,您始终可以使用--pythonpath选项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59408299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档