使用 keywords - daniel-qa/RobotFramework GitHub Wiki
Keyword And Ignore Error
Keyword And Ignore Error:执行关键字,如果遇到错误,则忽略该错误并继续执行后续的关键字。
Keyword And Return Status:执行关键字,如果执行成功,则返回True,否则返回False。
Keyword And Continue On Failure:执行关键字,如果遇到错误,则继续执行后续的关键字。
中途想跳出 Keyword 的方式
使用 if 的判斷方式,條件失敗,則不繼續往下執行 (結束)
*** Keywords ***
判斷登入狀態
Log 判斷登入狀態
${element_status} Run Keyword And Return Status Page Should Not Contain Element css=.ivu-icon-md-power
run keyword if ${element_status} 登入 ${id} ${pwd}
登入
Log 執行登入的操作
用户关键字返回值
*** Test Cases ***
One Return Value
${ret} = Return One Value argument
Some Keyword ${ret}
Multiple Values
${a} ${b} ${c} = Return Three Values
@{list} = Return Three Values
${scalar} @{rest} = Return Three Values
*** Keywords ***
Return One Value
[Arguments] ${arg}
Do Something ${arg}
${value} = Get Some Value
[Return] ${value}
Return Three Values
[Return] foo bar zap
使用 keywords,Arguments
- EX
*** Variables ***
${LOGIN_URL} https://www.google.com
*** Test Cases ***
Example Test
登入 https://mynet.net
*** Keywords ***
登入
[Arguments] ${url}=${LOGIN_URL}
keyword 的參數使用變數作預設值
*** Settings ***
Library BuiltIn
*** Variables ***
${default_value} Default Value
*** Keywords ***
Example Keyword
[Arguments] ${param1} ${param2}=${default_value}
Log param1: ${param1}
Log param2: ${param2}
*** Test Cases ***
Example Test Case
[Documentation] This is an example test case
Example Keyword Value 1
Example Keyword Value 2 Custom Value
- 預設變數參數
[Arguments] ${id}=${USERNAME} ${pwd}=${PASSWORD} # (O) 可以使用
[Arguments] ${id} ${pwd}=${PASSWORD} # (O) 可以使用
[Arguments] ${id}=${USERNAME} ${pwd} # (X)這種會出錯
RF 可以為参数设置默认值,不提供參數,将会使用默认值。
*** Test Cases ***
學生答題
學生答題 B
*** Keywords ***
學生答題
[Arguments] ${option}=A
log to console ${option}
*** Keywords ***
Multiply Numbers
[Arguments] ${a}=2 ${b}=3
${product} = Evaluate ${a} * ${b}
[Return] ${product}
- 创建一个名为 "CalculatorKeywords" 的关键字文件(例如:CalculatorKeywords.robot):
*** Settings ***
Library OperatingSystem
*** Keywords ***
Add
[Arguments] ${a} ${b}
${result} = Evaluate ${a} + ${b}
[Return] ${result}
Subtract
[Arguments] ${a} ${b}
${result} = Evaluate ${a} - ${b}
[Return] ${result}
在这个例子中,我们定义了两个关键字:Add 和 Subtract,它们分别执行加法和减法操作。
- 创建一个测试用例文件(例如:TestCalculator.robot):
*** Settings ***
Documentation Example Test Cases for Calculator
Library CalculatorKeywords
*** Test Cases ***
Addition Test
${sum} = Add 5 3
Should Be Equal As Integers ${sum} 8
Subtraction Test
${diff} = Subtract 10 4
Should Be Equal As Integers ${diff} 6
在这个测试用例文件中,我们首先导入了之前定义的 CalculatorKeywords 库。
然后,我们编写了两个测试用例:Addition Test 和 Subtraction Test,它们分别调用了我们定义的关键字来执行加法和减法操作,
并且使用了 Should Be Equal As Integers 关键字来断言结果是否正确。