断言方法

#字符应该等于shell

Should Be Equal As Strings      ${resp.status_code}      200json

#字典里包含测试

Dictionary Should Contain Value      ${resp.json()}      Bulkan Savun Evcimen             .net

#变量里面是否包含1.0scala

should contain    ${list_b}    1.0   code

 

------------------------------------------------分割线-----------------------------对象

参考这2个blog

https://blog.csdn.net/qq_43558150/article/details/99678213ci

https://blog.csdn.net/hzk594512323/article/details/90751586字符串

 

      为方便讲解,首先建立三个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 

            

备注:如下提供的用例都是断言成功。

0一、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

说明:变量${list_b}包含对象1.0而不包含对象1,且对象21在变量${list_b}出现了两次。

     

0二、should be empty 与 should not be empty

should be empty    ${list_c}
should not be empty    ${list_a}

说明:变量${list_c}没有赋值,因此为空;相反,变量${list_a}有赋初始值,故为非空。

 

0三、should be equal 与 should not be equal

should be equal    ${list_a[1]}    ${list_b[1]}
should not be equal    ${list_a}    ${list_b}

说明:${list_a[1]}=a,${list_b[1]}=a故两个对象相等;而${list_a}和${list_b}有元素不一致,这两个对象不相等。

 

0四、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仍是不相等的;

 

0五、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]}

说明:${list_a[3]}=21,${list_b[3]}=21,而系统默认为字符串格式的“21”,故须要转化为整数类型,转化为整数后两个对象相等;

${list_a[4]}=12,${list_b[4]}=21,即便转化为整数后两个对象依旧是不相等;

 

0六、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]}

说明:${list_a[2]}=${21},${list_b[2]}=${21},而均为数值型的21,故须要转化为字符串类型,转化为字符串后两个对象相等;

 

0七、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值小;

 

0八、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开头;

 

0九、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结尾;

 

十、should match与should not match

should match    ${name}    p??
should not match    ${string}    h?*

说明:模式匹配和shell中的通配符相似,它区分大小写,'*'匹配0~无穷多个字符,“?”单个字符

${name}=plw,由以p开头的三个字母组成

 

十一、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}组成。

相关文章
相关标签/搜索