接口开发—hrun语法和用例规范

发布时间:2024年01月05日

学习目标:

1、常见的抓包方法

2、如何提取和使用token

3、用例规范

4、辅助函数

具体内容:

1、常见的抓包方法

做接口测试前,肯定需要使用抓包工具去请求接口,然后才开始正常写接口用例。

常用的2种抓包方法有:

1.1 windows上使用的接口工具:postman、fiddler、浏览器的network,工具的使用方法就不专门介绍了,这个网上很多

1.2linux上做请求操作:使用curl工具请求,curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具

1.2.1 curl工具的常用操作

查看帮助命令:curl –h

查看请求的详细内容:curl –v 请求内容

使用参数 -X 加请求方法类型:curl –X POST/GET

使用参数 -H 可以添加请求的头部,多个头部信息需要使用多个 –H

使用参数-F 可以添加表单数据,多个字段需使用多个-F

POST请求提交JSON文本格式数据

其他的post请求操作(注意data里面的双引号):

2、如何提取和使用token

引用参数变量的两种方法

1、从test的extract获取变量名称

2、从debugtalk里面获取对应的函数的返回值

3、用例规范

编写规范:

执行规范:

  1. 执行单个用例
  2. 执行多个用例
  3. 执行n个目录下的用例

4、辅助函数

5、hrun框架生成和使用

5.1自动生成hrun框架

安装对应的hrun版本:pip3 install httprunner==2.2.1

hrun --startproject 项目名称,可以在当前目录下生成hrun框架

一个HttpRunner项目中必须要有的文件:api(定义接口) ?reports(自动生成的,存储测试报告) testcases (存放测试用例) ?testsuites(存放测试套件) ?.env (存放环境配置参数) ?debugtalk (编写脚本函数)

5.2 hrun框架构成介绍

5.2.1api层:主要是单个接口的用例编写,包括name、request主体、validate验证

5.2.2testcase层:主要是把之前api层的用例组合成用例,包括:config(存放公共配置)和teststeps(api或者自定义的接口组成 的用例步骤)2层部分,里面调用api的路径都是从根目录后开始写的

备注:常用的断言方法

eq(=)、lt(<)、le(<=)、gt(>)、ge(>=)、ne(!=);

str_eq、len_eq、len_gt、len_ge、len_lt、len_le;

contains、contained_by、type_match、regex_match、startswith、endswith

5.2.3testsuites层:把之前的层是用例组合

?

5.2.4 .env文件是存放环境配置参数:里面使用=进行参数的赋值,其他的模块使用变量直接使用${ENV(变量名称)}就可以直接获取env文件里面的变量值了。

debugtalk.py文件:里面可以自定义一些辅助函数,其他模块可以直接调用

6、常见问题排查:

6.1?AttributeError: module 'yaml' has no attribute 'FullLoader'

解决方法

pip install --ignore-installed PyYAML

6.2运行用例报错:Testcases not found in?xxx

解决方法:

卸载httprunner后升级到对应的版本

6.3httprunner.exceptions.ApiNotFound: api/login_submit.yml not found!

解决办法:

hrun的用例运行需要在根目录下执行,不如会找不动文件

6.4要注意yaml格式里面字典的分号的后面要有个空格,否则会报错

6.5禁用https协议的安全校验方法:

文章来源:https://blog.csdn.net/weixin_39366308/article/details/135389028
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。