定義
任何 critical 測(cè)試案例失敗轿腺,停止測(cè)試
-X --exitonfailure Stops test execution if any critical test fails.
Short option -X is new in RF 3.0.1.
案例
測(cè)試目錄結(jié)構(gòu)如下
test_robot
| ---- __init__.robot
| ---- a.robot
| ---- b.robot
| ---- z_test (subfolder)
| ---- __init__.robot
| ---- c.robot
| ---- d.robot
測(cè)試命令: 在test_robot目錄下執(zhí)行命令pybot -L trace --exitonfailure .
測(cè)試模擬: 在不同的文件內(nèi)加 Fail (Fatal Error)
keyword, 模擬case失敗, 這兩種情況不一樣
- 場(chǎng)景:在test_robot目錄下的__init__.robot 加
Fail
keyword
可以看到a那個(gè)case是失敗的, b, c, d case都是含有tagrobot-exit
- 場(chǎng)景:在z_test (subfolder)目錄下的__init__.robot 加
Fail
keyword
可以看到a鸣皂,b case是成功的灾梦, c那個(gè)case是失敗的, d case含有tagrobot-exit
- 場(chǎng)景:在test_robot目錄下的__init__.robot 加
Fatal Error
keyword
可以看到init是失敗的恳守, a, b, c, d case都是含有tagrobot-exit
- 場(chǎng)景:在z_test (subfolder)目錄下的__init__.robot 加
Fatal Error
keyword
可以看到a峦耘,b case是成功的, init是失敗的, c, d case含有tagrobot-exit
總結(jié)
在robot中 fail 和 fatal 失敗是完全不一樣的
- Fail
失敗在init步驟赤嚼,后面的test case失敗message都是一樣的AssertionError旷赖,沒(méi)有增加任何tag
運(yùn)行加上參數(shù)
--exitonfailure
, 失敗在init步驟或者a.robot 步驟, 第一個(gè)test case失敗message為AssertionError更卒, 后面失敗的case(第二個(gè)開(kāi)始)會(huì)自動(dòng)增加tagrobot-exit
, message 為Critical failure occurred and exit-on-failure mode is in use.失敗在a.robot步驟等孵,第一個(gè)test case失敗message為AssertionError, 后面的case正常跑下去
- Fatal Error
失敗在init步驟蹂空,后面的失敗case 會(huì)自動(dòng)增加tag
robot-exit
俯萌, message 為Test execution stopped due to a fatal error.運(yùn)行加上參數(shù)
--exitonfailure
, 失敗在init步驟, 第一個(gè)test case失敗message為Test execution stopped due to a fatal error. 且自動(dòng)增加tagrobot-exit
上枕, 后面失敗的case會(huì)自動(dòng)增加tagrobot-exit
, message 為Critical failure occurred and exit-on-failure mode is in use.失敗在a.robot步驟咐熙,運(yùn)行時(shí)沒(méi)有加上參數(shù)
--exitonfailure
(有加上這個(gè)參數(shù)), 第一個(gè)test case失敗message為AssertionError , 后面失敗的case會(huì)自動(dòng)增加tagrobot-exit
, message 為Test execution stopped due to a fatal error(加上參數(shù)后message變?yōu)?Critical failure occurred and exit-on-failure mode is in use)