Robotframework Robot Framework-如果文件存在,则运行关键字

Robotframework Robot Framework-如果文件存在,则运行关键字,robotframework,Robotframework,如果文件系统中存在文件,如何在robot框架中运行关键字? 例如: Run Keyword If ${filename} exists Delete File 库可以用于此目的,即使您所需要的并没有确切的关键字。但您可以发挥创意,或许可以使用获取文件,获取文件大小,列出目录中的文件,运行并返回Rc,甚至其他方法。还有一些关键字,如文件应存在,文件不应存在,应存在。也许您可以更改代码以便使用这些 或者创建自己的简单库: 库/file.py 导入操作系统 def文件_存在(文件): 返

如果文件系统中存在文件,如何在robot框架中运行关键字? 例如:

Run Keyword If    ${filename} exists    Delete File
库可以用于此目的,即使您所需要的并没有确切的关键字。但您可以发挥创意,或许可以使用
获取文件
获取文件大小
列出目录中的文件
运行并返回Rc
,甚至其他方法。还有一些关键字,如
文件应存在
文件不应存在
应存在
。也许您可以更改代码以便使用这些

或者创建自己的简单库:

库/file.py

导入操作系统
def文件_存在(文件):
返回os.path.isfile(文件)
导入它并按照您在问题中提到的方式使用它:

测试/测试机器人

*** Settings ***
Library    ../Libraries/file.py    

*** Test Cases ***
Test File Exists
    ${fileExists}=    File Exists    test.robot
    Run Keyword If    ${fileExists} is True    Log To Console    Exists!         
库可以用于此目的,即使您所需要的并没有确切的关键字。但您可以发挥创意,或许可以使用
获取文件
获取文件大小
列出目录中的文件
运行并返回Rc
,甚至其他方法。还有一些关键字,如
文件应存在
文件不应存在
应存在
。也许您可以更改代码以便使用这些

或者创建自己的简单库:

库/file.py

导入操作系统
def文件_存在(文件):
返回os.path.isfile(文件)
导入它并按照您在问题中提到的方式使用它:

测试/测试机器人

*** Settings ***
Library    ../Libraries/file.py    

*** Test Cases ***
Test File Exists
    ${fileExists}=    File Exists    test.robot
    Run Keyword If    ${fileExists} is True    Log To Console    Exists!         

当我需要这种行为时,我会编写这样的代码。。。也许我能为你工作

*** Settings ***
Library    Process

*** Variables ***
@{FILES}    ${CURDIR}/someFolder/aaa.pdf
...         ${CURDIR}/someFolder/bbb.pdf

*** Test Cases ***
Check and Delete Files
    FOR    ${file}    IN    @{FILES}
        ${out} =    run process    ls    ${file}
        run keyword if    ${out.rc} == 0    Delete File    ${file}    
    END

*** Keywords ***
Delete File
    [Arguments]    ${f}
    ${o} =    run process    rm    -f    ${f}
    Should Be Equal As Integers   ${o.rc}    0

当我需要这种行为时,我会编写这样的代码。。。也许我能为你工作

*** Settings ***
Library    Process

*** Variables ***
@{FILES}    ${CURDIR}/someFolder/aaa.pdf
...         ${CURDIR}/someFolder/bbb.pdf

*** Test Cases ***
Check and Delete Files
    FOR    ${file}    IN    @{FILES}
        ${out} =    run process    ls    ${file}
        run keyword if    ${out.rc} == 0    Delete File    ${file}    
    END

*** Keywords ***
Delete File
    [Arguments]    ${f}
    ${o} =    run process    rm    -f    ${f}
    Should Be Equal As Integers   ${o.rc}    0

检查文件是否使用OS lib退出,然后将返回值放入运行关键字if。检查文件是否使用OS lib退出,然后将返回值放入运行关键字if。