随笔分类 - python学习日记
接口加密方式
摘要:接口鉴权方式: 1) token鉴权2) timestamp+token+sign 鉴权,其中sign= RSA(token 前50位+时间戳) timestamp+token+sign方式鉴权: 当X-Lemonban-Media-Type请求头值为lemonban.v3时,接口使用timesta
阅读全文
pytest框架
摘要:1.动态生成报告 2.夹具作用域 3.参数化 4.用例筛选 5.失败重跑 pytest的run文件,生成动态的测试报告 pytest夹具的作用域 共享 fixture1,将所有的夹具全部放到 一个固定的模块文件, conftest.py2, 所有导入夹具的操作就可以省略, pytest运行时会自动在
阅读全文
mock接口
摘要:## mock- 什么是 mock- 为什么要使用 mock- 怎么使用(两种方法)通过代码去制造假的输出。(结果)接口自动化测试客户端mock:通过代码去模拟假的接口返回数据。(访问接口的过程就可以省略) 服务 mock (mock server)开发的接口是在server, 真实的服务器。我就自
阅读全文
pytest测试框架的使用
摘要:## pytest第三方的框架,所以需要安装:pip install pytest对于单元测试框架的核心功能:- 收集用例, 进入目录,运行 pytest - 指定用例函数的定义规则(test_)支持普通函数,测试类- 自动执行用例, 如果不能识别,需要修改 pycharm 默认的执行器改成 pyt
阅读全文
自动化测试需要注意的知识点
摘要:自动化测试需要注意的知识点: 读取数据库,读取excel, 读取 yaml, log日志, 测试:单元测试框架 unittest / pytest 自动化测试的思想:ddt 数据驱动, 参数化 前置处理( setUp ) 数据伪造,数据生成。 fk 手机号码。 接口关联。 -方法1: setUp #
阅读全文
业务流测试
摘要:需求:完成投资的业务流测试。 步骤: 审核项目、投资等步骤依赖于前面登录、添加项目的操作 思路: 1.对数据进行预处理,接口访问。数据替换,字符串转为字典,动态获取类的属性 2.访问接口,得到接口的返回结果 3.从响应结果中读取下面接口需要的数据,设置为同名的属性:#invest_token# 4.
阅读全文
python中的re模块-使用正则表达式
摘要:""" re模块各方法区别 search:若string中包含pattern子串,则返回Match对象,否则返回None,注意,如果string中存在多个pattern子串,只返回第一个 findall:返回string中所有与pattern相匹配的全部字串,返回形式为数组。 finditer:返回
阅读全文
接口关联
摘要:上次的问题: 1.一个用例的代码太多(封装函数或者类)2.响应数据的获取 --> jsonpath3.余额还没校验,1, 接口返回, 2, 数据库4.正则表达式解决充值用例代码太多的问题:把登录接口封装在base.py里 >在执行充值用例时调用一次,可使用setup或者setupclass登录接口封
阅读全文
充值接口代码示例
摘要:import json import unittest from ddt import ddt, data import requests from common.excel import read_excel_dict from setting import config cases = read
阅读全文
数据库操作封装代码示例
摘要:import pymysql class DBHandler(): """数据库操作""" def __init__(self, host='', port= , username='', password='', db_name='f' ): # 得到一个连接对象 self.connection
阅读全文
数据库的连接-pymysql库的使用
摘要:""" 数据库的步骤: 1, 建立连接 > 认识小姐姐(加个微信) 2, 得到一个游标的对象(数据库的操作都是通过游标), 你和小姐姐约会,见面的机会。 3, execute(sql) ,具体的而执行,(看电影) 4, 获取执行 sql 语句的结果。 (反馈和结果) 5, 关闭游标对象 (再见) 6
阅读全文
测试数据参数化相关
摘要:1.解决随机生成数据的问题 (1)faker的使用: from faker import Faker def generate_phone(): # 初始化文化 faker = Faker(locale=['zh-cn']) # 生成手机号码 return faker.phone_number()
阅读全文
注册接口测试优化总结
摘要:# 注册接口测试优化点- 测试报告展示不覆盖 解决方法:文件名加上时间后缀- 注册的手机号码生成 解决方法:使用faker随机生成手机号码 - 全量断言和部分断言 解决方法:excel里写部分预期结果,使用for循环遍历expected和actual # 注册已经实现的功能- 整个框架已经实现了流程
阅读全文
接口框架项目示例
摘要:整体框架: cases.xlsx用例: common.read_xl的代码 from openpyxl import load_workbook from settings import config def read_excel(file, sheet_name): # 通过文件得到一个工作簿,参
阅读全文
接口框架开发流程总结
摘要:##测试流程- 需求分析。需求文档,接口文档。抓包接口- 计划。进度?是否自动化?优先级?- 测试用例(是从手工测试提取出来)- 评审- 执行,(写代码)- 报告接到项目:1.需求文档,功能展示以及交互2.接口文档,后端数据怎么传输的3.数据库账号、数据库地址、结构,熟悉整个项目的轮廓、字段4. 测
阅读全文
requests库的简单使用
摘要:import requests rsp = requests.get('https://www.baidu.com') print(rsp.text) # 字符串 print(rsp.content) # bytes,字节。 == 二进制 # print(rsp.json()) # 字典格式,当返回
阅读全文
使用flask创建简单的接口
摘要:""" 接口:url 和 某个函数的绑定关系,当访问一个url时,会调用该函数,函数的返回值会返回前端 """ # flask 框架 from flask import Flask # 服务 app = Flask(__name__) # url 调用的函数 def login(): return
阅读全文
session和token
摘要:http协议无状态的问题:1.不安全2.需要重复传入相同的数据为了解决这两个问题引入了session## session让服务器记住客户端,比如存储账号密码、访问次数等。默认在服务器中保存数据,并生成一个session_id,用来代表存储的数据,通常是加密的比如session = 'yuz;2021
阅读全文
动态获取文件路径
摘要:# -*- coding: utf-8 -*- # author:wyatt # @time:2021/10/14 20:41 import os # 获取当前文件的绝对路径 print(os.path.abspath(__file__)) # 获取某个文件的目录 file_path = os.pa
阅读全文
自定义封装logging参考
摘要:# -*- coding: utf-8 -*- # author:wyatt # @time:2021/10/12 20:27 import logging def get_log(name='root', level='INFO', fmt="%(asctime)s--%(message)s",
阅读全文
浙公网安备 33010602011771号