条件断言

假设接口用例执行的返回结果是:

  1. {
  2. "code":10000,
  3. "message":"success",
  4. "data":{
  5. "name":"Criss",
  6. "age":18,
  7. "class":["math","English","Chinese"]
  8. }
  9. }


关键字模式下的条件断言

使用内置关键字ASSERT()

假设要断言返回结果的name是Criss,
首先通过关键字取出name的值,然后进行条件断言,如下:

  1. name = JSON_GET($CONST[RESP_TEXT],["data"]["name"]);
  2. ASSERT( Criss [==] $VAR[name]);

假设还要断言返回结果的age大于15岁,
首先通过关键字取出age的值,然后进行条件断言,如下:

  1. age = JSON_GET($CONST[RESP_TEXT],["data"]["age"]);
  2. ASSERT( $VAR[age] [>] 15 );

假设还要断言学习的class的数量大于2,
首先通过关键字取出class的长度,然后进行条件断言,如下:

  1. classlen = JSON_LIST_LEN($CONST[RESP_TEXT],["data"]["class"]);
  2. ASSERT( $VAR[classlen] [>] 2 );

python模式下的条件断言

使用内置函数asserts()

假设要断言返回结果的name是Criss,
首先通过python相关的函数取出name的值,然后进行条件断言,如下:

  1. resultDict = json.loads(const("RESP_TEXT"))
  2. name = resultDict["data"]["name"]
  3. asserts( 'Criss [==] $VAR[name]')

asserts中也可以有另外一种方式,就是传入bool表达式进行断言,如下:

  1. asserts( name == "Criss")

假设还要断言返回结果的age大于15岁,
首先通过python相关的函数取出age的值,然后进行条件断言,如下:

  1. age = resultDict["data"]["age"]
  2. asserts( '$VAR[age] [>] 15' )

传入bool表达式进行断言,如下:

  1. asserts( age > 15)


假设还要断言学习的class的数量大于2,
首先通过函数取出class的长度,然后进行条件断言,如下:

  1. classlen = len(resultDict["data"]["class"])
  2. asserts( '$VAR[classlen] [>] 2' )

传入bool表达式进行断言,如下:

  1. asserts( classlen > 2)