【python 实现接口自动化】教程文章相关的互联网学习教程文章

python接口自动化之pytest环境准备与入门(五)【代码】【图】

安装的pytest版本应该与安装的python版本对应,不然会有问题(我的环境是python3.6与pytest4.5.0)1、安装pytestpip install pytest==4.5.0 2、pytest基本语法文件名以test_*.py和*_test.py以test_开头的函数以Test开头的类以test_开头的方法所有的包package必须要有__init__.py文件# -*- coding:utf-8 -*- def test_01():"""用例描述:测试用例01"""a = 111b = 222assert a == bdef test_02():"""用例描述:测试用例02"""a = 111b...

python接口自动化3-自动发帖(session)【代码】【图】

言上一篇模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等,这时候如何保持会话呢? (敲黑板!!!由于博客园最近登录机制变了,登录全部走cookie登录)一、session简介1.查看帮助文档,贴了一部分,后面省略了>>import requests>>help(requests.session())class Session(SessionRedirectMixin) | A Requests session. | | Provides cookie persistence, connection-pooling, and configuration...

python接口自动化4-绕过验证码登录(cookie)【图】

前言有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接)。获取不到也没关系,可以通过添加cookie的方式绕过验证码。一、抓登录cookie1.登录后会生成一个已登录状态的cookie,那么只需要直接把这个值添加到cookies里面就可以了。2.可以先手动登录一次,然后抓取这个cookie,这里就需要用抓包工具fiddler了3.先打开博客园登录界面,手动输入账号和密码(勾选下次自...

python接口自动化5-session关联【代码】【图】

前言我们不难发现浏览器中存在着cookie缓存等,但我们在python中如果像浏览器这样的缓存,我们就很难的需要关联cookie或会话了。但python的requests库,就封装了Session方法、Session类实现会话对象。就好比如是python中的浏览器。一、Cookie 与 Session 的区别1、Cookie,也用复数Cookies,就是为了辨别用户身份、进行 Session 跟踪而储存在用户本地终端上的数据,通常要加密,而Cookie数据存放在客户的浏览器上;2、Cookie保存在...

python接口自动化(六)--发送get请求接口(详解)【代码】【图】

简介  如果想用python做接口测试,我们首先有不得不了解和学习的模块。它就是第三方模块:Requests。 虽然Python内置的urllib模块,用于访问网络资源。但是,它用起来比较麻烦,而且,缺少很多实用的高级功能。更好的方案是使用requests。它是一个Python第三方库,处理URL资源特别方便。查看其中文官网:http://cn.python-requests.org/zh_CN/latest/index.html 英文官网:http://www.python-requests.org/en/master/ 可以看...

python接口自动化之-- json参数替换【代码】

#! /usr/bin/python# coding:utf-8# class changeData(object):class getValues(object): def __init__(self): pass #通过key获取嵌套字典value def get_target_value(self,key, dic, tmp_list): """ :param key: 目标key值 :param dic: JSON数据 :param tmp_list: 用于存储获取的数据 :return: list """ if not isinstance(dic, dict) or not isinstance(tmp_l...

python接口自动化之json断言【图】

做接口自动化的时候,少不了断言的方法。常用的断言方法:r.url,r.status_code,r.headers,r.cookies,r.json,r.request等。我自己在做接口自动化的时候,经常会使用多个断言,不只是使用其中一个断言的。今天讲下r.josn()断言的使用方法。如下图:1,先打印出r.json(), 再进行json()断言。我使用的是python的unittest框架,所以断言方法如下图:我这里是断言:headers中的‘content-length‘的值。前面的一个截图中,content-length的...

Python接口自动化--SSL 3【代码】

官方文档参考地址:https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings针对SSL Warnings,urllib3根据不同级别的证书校验有不同级别的警告,针对这些不同的场景有以下几种不同的解决办法1.不安全的请求警告  当在没有启用证书验证的情况下对HTTPS URL进行请求时,就会发生这种情况。解决办法如下:  参考官方地址:https://urllib3.readthedocs.io/en/latest/user-guide.html#ssl  urllib3没有对HT...

python接口自动化9-ddt数据驱动【代码】【图】

前言ddt:数据驱动,说的简单一点,就是多组测试数据,比如点点点的时候登录输入正常、异常的数据进行登录。实际项目中,自动化测试用得很少,但也有人用excel来维护测试数据一、ddt1、安装:pip install ddt (我这里已经安装过了)C:\Users\Administrator>pip install ddt Requirement already satisfied: ddt in d:\path_python\lib\site-packages (1.2.1)2、先看下我们以前正常登录禅道的传参。登录需要账号与密码,现在只有一...

python+unittest+requests实现接口自动化【代码】【图】

前言:Requests简介Requests 是使用 Apache2 Licensed 许可证的 HTTP 库。用 Python 编写,真正的为人类着想。Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 有点落后了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。总之,大家建议大家用Requests吧。Requests的官方文档:http://cn.python-requests.org/zh_CN/latest/通过下面方法安...

浅析Python进行接口自动化【图】

python进行接口自动化需要依赖于requests库,首先如果没有下载该库,使用pip进行下载到本地:1.进入D:\软件安装文件夹\PYTHON\Scripts目录下(ps:这个看个人安装python位置),使用cmd进入命令界面,输入pip install requests,完成后即可使用 参考示例:期间自己调测可以使用fiddler抓包进行调试,后面再研究使用unitest测试框架进行校验等原文:https://blog.51cto.com/12390959/2369129

Python接口自动化基础---post请求【代码】【图】

常见的post提交数据类型有以下两种:第一种:application/json ,这是常见的json格式,格式如下:{"input1":"xxx","input2":"ooo","remember":false}第二种:application/x-www-form-urlencoded,浏览器原生的form表单,格式如下:input1=xxx&input2=ooo 1、json格式的post请求:import requests import jsonurl=‘http://www.tuling123.com/openapi/api‘data={‘key‘:‘4b6ce82fbe554a11b99dabfa3a4ae6d9‘,‘info‘:‘我的城市在...

python3+requests接口自动化-日志封装【代码】

1.logger.py这个文件放到common目录下,封装日志文件的读取 2.日志保存到logs文件夹 3.封装代码 1 import logging2 import os3 import time4 5 6 # log_path是日志存放路径地址7 get_path = os.path.dirname(os.path.abspath(__file__))8 log_path = os.path.join(os.path.dirname(get_path),"log")9 10 11 # 如果不存在这个logs文件夹,就自动创建一个 12 if not os.path.exists(log_path):os.mkdir(log_path) 13 14 class Log...

python接口自动化(四十)- logger 日志 - 下(超详解)【代码】【图】

简介按照上一篇的计划,这一篇给小伙伴们讲解一下:(1)多模块使用logging,(2)通过文件配置logging模块,(3)自己封装一个日志(logging)类。可能有的小伙伴在这里会有个疑问一个logging为什么分两篇的篇幅来介绍她呢???那是因为日志是非常重要的,用于记录系统、软件操作事件的记录文件或文件集合,可分为事件日志和消息日志。具有处理历史数据、诊断问题的追踪以及理解系统、软件的活动等重要作用,在开发或者测试软系统...

(接口自动化)Python3操作MySQL数据库【代码】

基础语法:import pymysql #导入模块 conn = pymysql.connect(host=‘localhost‘,user=‘root‘, passwd=‘123456‘, db=‘test‘, port=3306, charset=‘utf8‘,cursorclass = pymysql.cursors.DictCursor) #连接数据库,cursorclass = pymysql.cursors.DictCursor表示把查询的返回值变为字典格式 cur = conn.cursor() #建立指针 cur.execute("insert into users (username,password,email) values (%s,%s,%s)",("老齐","9988","...

自动化 - 相关标签