接口测试
文章平均质量分 82
conlin233
这个作者很懒,什么都没留下…
展开
-
进阶之路--从0开始学接口测试(12)--接口鉴权,加密
接口使用 timestamp+token+sign 鉴权token的生成是固定的 但是外面所包裹的加密每个公司都不一样,需要获得公司的加密方式,可以询问开发人员,加密后的数据一般放在请求体中1,获得token值,在请求头authorization设置获取前50位2,请求体设置timestamp参数,值为当前的时间戳,类型为long3,请求体设置sign参数,值为token前50位拼接timestamp值,然后通过RSA公钥加密得到的签名字符串通过RSA...原创 2021-11-19 10:47:05 · 1555 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(11)--pytest单元测试框架
Pytest对于单元测试框架的核心功能:-收集用例-指定用例函数的定义规则(比如unittest的用例,模块和收集用例的文件夹是以test开头)-自动执行用例-前置和后置的夹具-断言-生成测试报告pytest用例编写规则比较灵活:需要更换单元测试框架用例函数测试用例函数还是要以test_开头1,直接定义函数,不需要测试类#方法1def test_pytest_1(): actual = 1 expected = 2 .原创 2021-11-15 17:12:10 · 530 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(10)--业务流接口自动化(投资接口)
业务流测试(各种功能) 对应的是单接口测试业务流本质上还是接口关联,需要多个接口一起测试,并且完成业务流程,即同时完成多个接口的测试,观察业务流程是否成功,也是一次集成测试.方法1:直接把要关联的接口封装到APICase里,然后填入访问接口时所需要的参数,每次执行用例的时候调用一次,从关联接口中获得测试接口所需要的数据,测试用例执行的只是被测接口优点:简单易懂缺点:如果业务流需要多个接口,就要封装多个访问接口的函数,并且多次调用,代码变得繁琐方法2:不需要封装访问关联接口原创 2021-11-08 17:51:07 · 552 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(9)--正则表达式的使用
业务流测试(各种功能) 对应的是单接口测试-业务流本质上还是接口关联技术1:-动态数据替换用if可以实现 但是如果要替换的数据很多的话,就要写很多的if-正则表达式正则表达式是通用的编程语言,是一种字符串的模糊匹配技术(基于一个规则去匹配字符串当中的内容),匹配的需要是连在一起的子字符串,只要想在字符串中符合规律的子字符串,基本上都可以使用正则表达式正则表达式在python中应用,re模块-基本语法参数:pattern 表达式(字符串类型) string 需...原创 2021-11-04 14:15:54 · 402 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(8)--接口关联-审核接口
实现接口关联(审核接口)依赖接口:登录接口(管理员账号),创建项目接口(得到项目id),项目接口也需要登录接口(普通用户账号member_id)流程:访问登录接口(获得普通用户id,普通用户token)--> 访问创建项目接口(需要普通用户token,获得项目id)-->访问登录接口(获得管理员id,管理员token)-->访问审核接口(需要管理员token,项目id)操作步骤:-在接口类中添加管理员登录的类方法,并且得到管理员id和token因为需要获得登录2个人的.原创 2021-11-02 17:56:57 · 264 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(7)--数据库操作
手工操作数据库使用软件连接数据库(navicat)提供数据库账号和密码(数据库名称)一个主机(连接)里面可能拥有多个数据库通过python操作数据库建立连接先导入pymysqlimport pymysql连接数据库需要准备的参数:-host:主机名称(url)-port:端口-username:用户名称-password:密码-db_name:数据库名称获取连接对象#建立连接host = "api.lemonban.com"p.原创 2021-10-28 17:10:53 · 196 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(6)--接口关联&余额校验(充值接口)
访问充值接口通过接口文档,得知访问充值接口需要的参数有用户id,而且需要在请求头输入token,所以必须先访问登录接口1,访问登录接口,获得id,tokenlogin_resp = requests.request(url="http://api.lemonban.com:8766/futureloan/member/login",method="post", headers={"X-Lemonban-Media-Type": "lemonba原创 2021-10-28 16:51:13 · 620 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(5)-用例参数动态化(注册接口)
注册接口自动化测试已经实现的功能:整个框架已经实现了流程的正常运行.ddt,运行,收集用例,测试报告存在问题:手机号注册问题手机号注册只能注册一次.如果直接写在excel中,第二次运行用例会提示手机号已存在,而且全量预期结果也只能在注册成功之后才能获取id,所以注册之前不能知道id,导致预期结果和实际结果不相符解决方法:1,手机号递增每次增加1,可能会出现手机号运营商不支持,比如18299999999,如果加1之后变成18300000000,但是并没有这个手机号2,清理数原创 2021-10-26 17:16:20 · 196 阅读 · 0 评论 -
进阶之路-从0开始学接口测试(4)--接口自动化框架搭建
自动化测试流程自动化测试主要执行阶段:冒烟测试(主流程是否能正常运行) 回归测试(修复bug之后,测试功能是否正常,是否会影响其他模块) 持续集成要在进行过1次以上的手工测试,熟悉业务流程和模块功能之后,才进行自动化测试需求分析一个项目接到手之后,我们需要进行需求分析需求文档,功能展示以及交互 接口文档,后端数据是怎么跟前端进行传输-纸质(电子)-open api(网站)-抓包(没有接口文档的时候,需要自己抓包查看请求...原创 2021-10-23 17:08:40 · 185 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(3) -- requests
通过python访问接口通过requests库可以使用python访问接口requests相当于一个客户端,跟浏览器,postman,jmeter相同导入requests库import requests发送一个get请求,参数需要传入url地址resp = requests.get("http://httpbin.org/get")获取响应体print(response.text) #字符串print(response.content)print(respons..原创 2021-10-21 17:08:27 · 400 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(2)--cookie,session,token
为什么我们访问曾经登录过的网页的时候,不用再重新输入用户名和密码?是因为第一次登录之后,服务器会像客户端发送cookie,里面记录了我们的用户信息和用户操作Cookie(客户端存储数据):客户端存储的用户相关的数据.是从服务端返回(通过set-cookie响应头),只是实现token和session的手段,是一个请求头字段,可以存放session_id和token的数据,这些数据可以不存储在cookie访问过的页面 都会返回客户端cookiecookie是怎么来的呢,首先要从h...原创 2021-10-19 17:04:17 · 207 阅读 · 0 评论 -
进阶之路--从0开始学接口测试(1)--接口基础
接口(API)基础什么是接口客户端和服务端之间会发生数据交换客户端:前端, --网页,浏览器,app,手表--能够显示相关页面服务端:后端,--提供客户端需要的数据--网页的内容,头像等,都是数据,从服务端传给客户端服务端通过接口(api),把数据传送到客户端在页面中点击之后,会发送很多请求,这些就是接口,每个接口都有响应的数据,如,请求头,响应头数据里面包含了host名称 请求方法等接口定义规则,可以在接口文档查看-访问地址--接口地址-请求方法--G.原创 2021-10-16 15:25:33 · 202 阅读 · 0 评论