10 2021 档案
接口关联
摘要:上次的问题: 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
阅读全文
if temp == 'Yes' or 'yes'的坑
摘要:今天遇到个有意思的题目: 以下代码输入:666,会执行什么? temp = input('请输入') if temp == 'Yes' or 'yes': print('if') else: print('else') 答案是if。 咋一看是要输入Yes或者yes才会执行if,但在python的运算
阅读全文
测试数据参数化相关
摘要: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
阅读全文
解决log函数生成重复log的问题
摘要:问题:在函数内直接调用封装好的log函数执行一次代码会生成两个重复的log 解决方法:在封装的log函数内写好log的文件路径,再去unitest中调用该变量
阅读全文
动态获取文件路径
摘要:# -*- 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",
阅读全文
框架搭建总结
摘要:## 框架搭建/框架设计- 怎么组织代码,怎么创建包,模块- 自动化的测试用例放在哪里?tests/- 入口 main,收集用例放在哪里?run.py- 测试数据,又该放在哪里?data/- 测试报告放在哪里?reports/- 配置文件放在哪里?settings/- 日志文件放在哪里?log/-
阅读全文
loguru的使用
摘要:from loguru import logger from unittest import TestCase # 将日志输出到demo1.log文件中 logger.add(sink='demo1.log', encoding='utf-8', level='ERROR', rotation='1
阅读全文
配置yaml文件和ini文件并读取
摘要:新建个xx.yaml文件,写入如下格式数据username: "wyatt"password: 123database: 127.1.23.32# 字典1info1: {"aa": "123", "bb": "asd"}# 注释使用## 列表1hobby1: [1, 2, 3]# 下面这种写法 =
阅读全文
配置文件和log
摘要:- 配置文件一、什么是配置setting·计算机屏幕亮度。·环境变量·手机 wifi开关,4g,True·命令行配置选项。—个自动化的测试用例里面哪些东西可以作为配置选项- 1.配置文件是什么?配置文件是用于配置计算机程序的参数和初始化设置的文件。如果没有这些配置,程序可能无法执行。比如现在你要开发
阅读全文
两种数据驱动方式
摘要:第一种: import unittest from common import login from read_xl import read_excel from unittestreport import ddt, list_data data = read_excel('cases.xlsx',
阅读全文
excel结合用例使用
摘要:未学习excel操作前,测试用例写法一般如下: 缺点:代码重复率高,每个函数只能写一条用例。 import unittest from common import login from read_xl import read_excel data = read_excel('cases.xlsx',
阅读全文
excel 结合测试用例的用法总结
摘要:## excel 结合测试用例的用法- 使用excel单独管理用例中的作用:便于维护- 具体用法: 1. read_xl读取excel中的数据 2. 通过参数化完成 数据到用例的结合 3. 用例函数只需要写一个,数据可以有多个甚至上万个,节省了很多的测试用例函数 4. 什么数据可以整合到一个用例函数
阅读全文
excel的操作
摘要:普通读取excel的操作: """ 安装一个第三方库,专门操作excel - openpyxl - xlrd - pandas:重量级,一般用来数据分析,实际上还是用的openpyxl 表格 = sheet 单元格 = cell 行 = row 列 = column pip install open
阅读全文
python夹具的使用
摘要:""" 夹具:给用例准备运行环境,前置条件 测试数据库:连接数据库就是前置条件,后置动作(夹具) 执行的过程:执行前置条件-->执行用例-->执行后置清理 每个用例之前执行setUp,每个用例结束执行tearDown """ import unittest class TestAdd(unittes
阅读全文
BeautifulReport的使用
摘要:框架: tests文件夹里放用例,最外层run.py运行用例生成报告 run.py代码示例: """ 收集用例,执行用例 """ import unittest import unittestreport from BeautifulReport import BeautifulReport """
阅读全文
unittest使用总结
摘要:## unittest- 编写用例- 运行用例包和目录的区别:只要目录下面有python文件,就选择“包”所有的用例是放在一个统一的“包”当中进行管理,tests,cases,unit_test,编写用例的注意事项:继承unittest.TestCase断言的注意事项:self.assertEqua
阅读全文