RobotFramework 的 关键字
自定義關鍵字
ride 可添加 user keyword 就是自定義關鍵字,根據自己的需要定義具體的從操作
常用關鍵字
在RF 來說會有內置關鍵字庫,也就是定義在 Standard libraries,官方文檔如下
http://robotframework.org/robotframework/#standard-libraries
也會有RobotFramework第三方庫,http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#external-libraries
關鍵字之斷言
為方便講解,首先創建三個list變量:list_a、list_b、list_c;以及兩個scalar變量:string和name。 @{list_a} create list 1 a ${21} 21 12 @{list_b} set variable 1.0 a ${21} 21 21 @{list_c} create list ${string} set variable pengliwen is in hangzhou ${name} set variable plw備注:以下提供的用例都是斷言成功。
01、should contain 、 should not contain 與should contain x times
should contain ${list_b} 1.0 should not contain ${list_b} 1 should contain x times ${list_b} 21 2說明:變量listb包含對象1.0而不包含對象1,且對象21在變量{list_b}包含對象1.0而不包含對象1,且對象21在變量listb?包含對象1.0而不包含對象1,且對象21在變量{list_b}出現了兩次。
02、should be empty 與 should not be empty
should be empty ${list_c} should not be empty ${list_a}說明:變量listc沒有賦值,所以為空;相反,變量{list_c}沒有賦值,所以為空;相反,變量listc?沒有賦值,所以為空;相反,變量{list_a}有賦初始值,故為非空。
03、should be equal 與 should not be equal
should be equal ${list_a[1]} ${list_b[1]} should not be equal ${list_a} ${list_b}說明:lista[1]=a,{list_a[1]}=a,lista?[1]=a,{list_b[1]}=a故兩個對象相等;而lista和{list_a}和lista?和{list_b}有元素不一致,這兩個對象不相等。
04、Should Be Equal As Numbers 與 Should not Be Equal As Numbers
Should Be Equal As Numbers ${list_b[0]} 1.0000 Should not Be Equal As Numbers ${list_b[0]} 1.1說明:${list_b[0]}=1,忽略精度,故與1.0000相等;而即使是忽略精度,1與1.1還是不相等的;
05、Should Be Equal As Integers與Should not Be Equal As Integers
Should Be Equal As Integers ${list_a[3]} ${list_b[3]} Should not Be Equal As Integers ${list_a[4]} ${list_b[4]}說明:lista[3]=21,{list_a[3]}=21,lista?[3]=21,{list_b[3]}=21,而系統默認為字符串格式的“21”,故需要轉化為整數類型,轉化為整數后兩個對象相等;
lista[4]=12,{list_a[4]}=12,lista?[4]=12,{list_b[4]}=21,即使轉化為整數后兩個對象依舊是不相等;
06、Should Be Equal As Strings與Should not Be Equal As Strings
Should Be Equal As Strings ${list_a[2]} ${list_b[2]} Should not Be Equal As Strings ${list_a[0]} ${list_b[0]}說明:lista[2]={list_a[2]}=lista?[2]={21},listb[2]={list_b[2]}=listb?[2]={21},而均為數值型的21,故需要轉化為字符串類型,轉化為字符串后兩個對象相等;
07、Should Be True與Should not Be True
Should Be True ${list_a[0]} < 10 Should not Be True ${list_a[0]} < 1說明:${list_a[0]}=1(字符串類型),其ASCII值比字符串10的ASCII值小;
08、Should start With與Should not start With
Should start With ${string} peng Should not start With ${string} h說明:${string}=”pengliwen is in hangzhou“是以peng開頭,而非以h開頭;
09、Should End With與Should not End With
Should End With ${string} hangzhou Should not End With ${string} pengliwen說明:${string}=”pengliwen is in hangzhou“是以hangzhou結尾,而非以pengliwen結尾;
10、should match與should not match
should match ${name} p?? should not match ${string} h?*說明:模式匹配和shell中的通配符類似,它區分大小寫,’*'匹配0~無窮多個字符,“?”單個字符
${name}=plw,由以p開頭的三個字母組成
11、Should Match Regexp與Should not Match Regexp
Should Match Regexp ${name} ^\\w{3}$ Should not Match Regexp ${name} ^\\d{3}$說明:反斜杠在測試數據是轉義字符,因此模式中要使用雙重轉義;’^‘和’$'字符可以用來表示字符串的開頭和結尾
${name}=plw,是有三個字母–w{3}組成,而不是由三個數字–d{3}組成
總結
以上是生活随笔為你收集整理的RobotFramework 的 关键字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2005-2019年所有地级市绿色专利申
- 下一篇: 新书推荐 | 陈山枝博士团队力作《蜂窝车