当测试失败时,机器人框架在log.html内没有输出

时间:2017-08-25 10:59:25

标签: python robotframework

我有一个python脚本,我在机器人框架中作为测试运行。测试配置为记录stdoutstderr,只要测试通过就可以正常工作,但即使输出在失败之前打印,测试失败也没有记录。

即使测试失败,有没有办法获得stdout

我的机器人文件:

*** Settings ***
Library   Process


*** Test Cases ***
First test
    ${result} =     Run Process     python    createCommunityTest/createCommunityTest.py
    Should Be Equal As Integers     ${result.rc}    0    
    Log     ${result.stderr} 
    Log     ${result.stdout}

测试脚本代码段

        if res.status == 201: 
            sys.exit(0)
        else:
            print("ERRRROR")
            sys.exit(1)

1 个答案:

答案 0 :(得分:3)

问题是,在测试失败后,您正在调用Log 。当您检查返回代码并且返回代码不为零时,测试会立即停止运行任何其他语句。

您可以在检查返回代码之前调用Log关键字来解决此问题。

Log     ${result.stderr} 
Log     ${result.stdout}
Should Be Equal As Integers     ${result.rc}    0