HttpRunner 使用注意点

1、基本规则

API接口定义必须放置在api目录下
模块定义必须放置在suite目录下
测试场景文件必须放置在testcases目录下
相关的函数定义放置在debugtalk.py中

  1. 变量的申明和引用  在 HttpRunner 中,支持变量申明(variables)和引用($var)的机制。在 config 和 test 中均可以通过 variables 关键字定义变量,然后在测试步骤中可以通过 $ + 变量名称 的方式引用变量。区别在于,在 config 中定义的变量为全局的,整个测试用例(testcase)的所有地方均可以引用;在 test 中定义的变量作用域仅局限于当前测试步骤(teststep)。

  2. 数据参数化

  3. 数据驱动

2、运行用例过程中开启fidder,不然会报错

3、报错expected <block end>, but found BlockMappingStart

yml 文件的内容格式问题,解决方法:

在配置文件yml中:

扫描二维码关注公众号,回复: 6062864 查看本文章

每个配置行前需要有空格

每个: 两边需要有空格

数组中间加空格

还有注释掉的参数不能在#后边加空格不然报错

4、header 中添加referer

如果后端对访问进行了限制,导致无法直接调口时,需要在config-headers中加入Referer字段,写入地址链接

api:
      def: clearImportData($cookie, $userNo)
      variables:
          - uri: "/pro/roomImport/clearImportData/$userNo"
      request:
          url: $uri
          headers:
              Referer: XXXXXXXXXX
          method: GET

5、上传文件  multipart/form-data方式

比如导入excel文件,content-type很重要,一定要写正确

- api:
      def: importRoom($cookie, $userNo)
      name: "导入数据"
      variables:
        - uri: "/pro/roomImport/importRoom"
        - field_name: 'hello.xls'
        - filePath: ${get_dir($field_name)}  #获取文件的相对路径
        - file1Data: ${get_file_std($filePath)} #open 读取文件
        - file_type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
      request:
          url: $uri
          method: POST
          files:
                userNo: [null, $userNo] #userNo是根据不同的登录用户动态获取
                file: [$field_name,$file1Data,$file_type]
          headers:
                Referer: XXXXXXX

猜你喜欢

转载自blog.csdn.net/m0_37636884/article/details/82774551