相信有些童鞋在做接口.或者说接口自动化测试的过程中会遇到这样的场景:测试的接口,必须是需要登录后才能发起请求成功的. 那么怎么解决呢? 本着团队协作的精神,我们就去让开发同学开个后门,给你个"万能"值,那么你带着这个"万能"值在请求里,就可以畅通无阻了. 但是也不是开发都愿意干这样的事儿,而且很多测试童鞋脸皮也薄(O(∩_∩)O哈哈~),脸皮薄不提倡啊.那么就自己的事儿自己来吧. 既然是需要登录才可以请求,那我们就登录呗.咋登录呢? selenium库用起来,然后用…
using OpenQA.Selenium;using OpenQA.Selenium.Chrome; public class GetSinaCookie { private static string userName = "name"; private static string paw = "passward"; public static void RefreshCookie() { // https://weibo.com var url = "…
前言 不管是自动化大佬还是自动化小白,都知道我们用python写接口自动化测试肯定是要用requests库来封装请求类的,下面就简单介绍下requests这个库 安装 一般都是直接采用pip命令安装:pip install requests 官方文档 官方文档的路径:https://cn.python-requests.org/zh_CN/latest/在官方文档你可以看到关于requests的用法. ps:官方文档是最靠谱的 废话不多说了直接上干货下面是封装的不保存cookies的类 clas…
一.重构post请求方法 上一张讲了如何使用requests库发送post请求,但是有时候,我们写脚本,不可能这么简单,代码完全不可复用,重复工作,那我们是不是可以想象,把我们的get,post请求,分别分装起来呢,等我们要使用的时候就直接调用好了. 废话不说,直接实例. 二.实例 1.我们先抓取一个接口,这边我直接抓了一个app接口,使用charles抓包.就用它了.如何抓包略. 2.代码实例 定义一个发送post的函数,传url,data参数, 返回 结果,最后调用这个函数 def send…
一.post请求 前面讲了,我们get请求的时候,引入requests的包,然后直接使用get方法,那么post是不是一样的? 1.首先我们先引入requests import requests 2. requests.post(),从提示的代码我们可以看到,需要传的参数,有请求的URL,data字典等: 3.那我们怎么写呢?看下面,post(接口地址,字段data),一般我们post一个接口的时候,内容比较多,我们单独维护一个字典 代码实例: #先定义一个字典data,post请求一个地址im…
1.概念 requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求. 2.安装 2.1 通过pip安装 ->打开命令行,windows->cmd,unix->终端; ->输入 pip install requests 2.2 下载代码后安装 git clone git://github.com/kennethreitz/requ…
这一部分的内容记述一下对Excel表格的操作,本实战中的测试用例是由Excel来管理的,因此操作Excel是重要的一部分. 再次贴出这张图,所有的测试用例都在这个sheet内,请求数据真实存放在json文件内,表格中的请求数据列放置的是json文件内字典的key值. 操作Excel主要就是取出Excel中的case(即数据),然后执行,重点是怎样取出数据,因为有些数据是不需要的,所以不能用遍历Excel的方法来取数据. 思路一:把列数作为常量,行数作为变量来取想要的数据 思路二:把Excel中不…
requests库7个主要方法 r= requsts.get(),主要属性: r.raise_for_status()方法内部判断r.status_code是否等于200不需要增加额外的if语句,该语句便于利用try-except进行异常处理. 理解requests库的异常 网络链接有风险,异常处理很重要…
1.登陆->充值->运行会报错 2,那如何解决这个问题呢,添加HTTP COokie管理器 另外一种方法,登录->提取正则表达式,充值->添加HTTP cookie管理器…
上一篇实现数据分离升级版--从DB获取数据,以及对应的请求实现,作为一个case,还缺少了预期结果与实际结果的获取及对比.因为前面的文章已经说过接口返回值的获取及对比,所以这篇不说这块了,这篇说一下DB存储部分的获取. 上一篇有提过如何从服务器获取mysql二进制日志获取操作涉及到哪些DB变化.我们手工新增后,可以看到对应的数据库结果,其中主要分三块:①手工输入的内容:②数据库自己生成的内容,如自动生成的递增id:③被测代码生成的内容,如uuid.版本信息.其中①的部分是我们主要要校验的,②.③…