一、接口分类
1.内部接口:测试被测系统各个子模块之前的接口,或者测试被测系统提供给内部用户系统使用的接口。
2、外部接口:被测系统调用外部的接口;系统对外提供的接口
接口测试重点:检查结论参数传递的正确性,输出结果的正确性及对各种异常情况的容错处理,以及权限控制,分页调用次数的限制。
二、接口框架设计
1、基于SOAP架构,基于XML规范,基于WebService协议;
2、基于RPC结构,基于dubbo协议,thrift协议,SpringCloud微服务
3、基于RestFul架构,基于json规范,基于Http协议
- RestFul规则:
- 接口地址:http://127.0.0.1/user,get,put,delete
get:查询用户
post:新增用户
put:修改用户 - json数据格式:
键值对:{key:value}
数组:[array1,array2]
三、
1.pytest的夹具
夹具=函数+fixtures装饰器
2、Fitures使用
在测试用例的参数列表中,加上夹具名称,夹具会被自动使用
3、Fixture范围
创建夹具,可以指定夹具的共享范围,在共享范围内的用例,会共用一个夹具
Pytest的夹具共享范围有5个
-
function(默认) min 自己和自己共享
-
class
-
module(文件)
-
package(文件夹)
-
session(会话) max 全局
4、POM实现对页面的封装
page、object、module
面向对象的模型,通过面向对象的思想封装页面中的元素,依据在页面中进行的自动化操作
(1)属性:页面中的元素
(2)方法:对页面的自动化操作 -
创建Page类
from webdriver -helper import *
class Indexpage(Basepage) -
定义属性
-
定义方法(自动化动作)
-
在测试用例中使用po
-
整理框架结构
四、数据驱动类型:
1、Pytest+csv数据驱动测试
实现测试代码的复用
- 提取用例之间差异的数据,保存的数据文件
- 用例通过参数化:得到数据,并执行用例
- 实现:通过对数据的编辑,添加修改
数据驱动测试=参数化测试+数据文件
2、Pytest+excel数据驱动测试
-
安装依赖
pip install openpyxl -
验证数据读取效果
-
执行新的测试用例
分析用例,找出不同用例数据差异(账号不存在,密码错误,正确密码…) -
自动生成Allure报告
3、关键字驱动测试
POM:必须先封装po(写代码)+excel(测试报告)+pytest(测试用例)
三合一:只需用excel
(1)读取excel
(2)生成测试用例
(3)启动测试框架
启动项目
Tool-》Run manage.py.Task
常用的管理命令:
runsever 启动项目(开发模式)
migrate 迁移数据执行
makemigrayions 创建数据库迁移脚本
低UI自动化——excel
低API自动化——yaml