背景: 接口自动化测试实现简单.成本较低.收益较高,越来越受到企业重视 restful风格的api设计大行其道 json成为主流的轻量级数据交换格式 痛点: 接口关联 也称为关联参数.在应用业务接口中,完成一个业务功能时,有时候一个接口可能不满足业务的整个流程逻辑,需要多个接口配合使用,简单的案例如:B接口的成功调用依赖于A接口,需要在A接口的响应数据(response)中拿到需要的字段,在调用B接口的时候,传递给B接口作为B接口请求参数,拿到后续响应的响应数据. 接口关联通常可以使用正则表达式…
在讲解装饰器在接口自动化测试项目的应用之前,我们先来介绍一下python装饰器到底是个什么 装饰器 说装饰器就不得不提一下函数这个一等公民了,在python中函数有几个特性先来了解一下 函数的一些特性 函数也是对象 在python中函数也是对象,可以把函数赋值给变量,比如下面这样: def func(message): print("打印一条message: {}".format(message)) send_message = func send_message("123&…
struts2为我们提供了一个很好的数据验证框架–validate,该框架可以很方便的实现服务端的数据验证. ActionSupport类提供了一个validate()方法,当我们需要在某一个action中进行数据验证时,可以重写这个方法.数据验证往往是在客户端向服务端提交表单信息时进行的,比如execute方法负责处理表单信息并返回相应的结果,在此之前,validate会先对提交的表单信息进行验证: ->验证通过:会执行execute的相应操作. ->验证失败: –>定义了失败后的re…
前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返回token的值所在的位置,取出来后就可以动态关联了 登录拉勾网 1.先找到登录首页https://passport.lagou.com/login/login.html,输入账号和密码登录,抓包看详情 2.再重新登录一次抓包看的时候,头部有两个参数是动态的,token和code值每次都会不一样,只能用一次 X-Anit-Forge-Token: 45aa69d8-4afa-4235-8957-9dd…
我理解jsonpath于json而言,就像是xpath在XML中的作用.用来确定json中某部分数据的语言.我更喜欢叫jsonpath表达式,因为这样好像是数学问题. 以前和小伙伴一起写接口自动化的时候,发现了一层一层的剥json串,实在是太费心了.后来也是请教了一位开发,他向我们推荐了这个工具.我们用了下,是真好用!墙裂推荐! json串结构样例:其实也不是很多层(小伙伴的接口层数特别多),但是就是想偷懒,找个简便的方式去解析它. 这是我的处理方式: 至于rct.read()里面的表达式$是从…
前言 不管是做Ui自动化和接口自动,代码和数据要分离,会用到Text,Excel,Yaml.今天讲讲如何读取文件数据 Python也可以读取ini文件,传送门 记住一点:测试的数据是不能写死在代码里面的,这个是原则问题 目录 1.读取Text 2.读取Excel 3.读取Yaml 读取Text 需求: 问题解析: 1.打开txt文件 2.读取每一行数据 3.将文件存放在列表中(方便循环读取) #!/usr/bin/python3 with open("E:/test.txt", &qu…
原文地址https://www.cnblogs.com/yoyoketang/p/9098096.html 原文地址https://www.cnblogs.com/yoyoketang/p/6886610.html 原文地址https://www.cnblogs.com/yoyoketang/ 原文地址https://www.cnblogs.com/yoyoketang/p/7259993.html 前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返…
前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返回token的值所在的位置,取出来后就可以动态关联了 登录拉勾网 1.先找到登录首页https://passport.lagou.com/login/login.html,输入账号和密码登录,抓包看详情 找到token生成的位置 1.打开登录首页https://passport.lagou.com/login/login.html,直接按F5刷新(只做刷新动作,不输入账号和密码),然后从返回的页面找到…
需求分析: 每次执行完自动化测试,我们不会执行删除接口把数据删除,而需要留着手工测试,此时会导致下次执行测试有旧数据 我们手工可能也会新增数据,导致下次执行自动化测试有旧数据 下面介绍两种清空数据的方法  一.通过获取total数值进行清空1. 实际页面.查询接口地址如下,页面有分页统计功能,能获取到总条数2. 首先需要添加查询接口获取总条数number,如下所示3. 在接口管理层级下新增一个循环控制器,用来控制循环的次数,变量为上个查询接口获取的number,如下所示4. 接着在删除检查数据层…
1.首先要在网页引入应该引入的js文件 在这里回顾一下在模板页里面挖坑的技术 2.在html中使用html辅助方法 3.验证模型 4验证方法…