python apitest 接口自动化测试- 初探框架学习

apitest2020

(废弃)

apitest2020 : study api test
学习接口自动化测试,学习了简单的自动化框架

平时工作比较忙,下班抽空搞的...

使用简单的django进行搭建简单的环境辅助自己测试用

python+excel+pytest+allure

主要把case保存在excel里,然后通过python进行调用测试

基本使用

###1 修改 data/case.xlsx 接口测试case

###2. 执行main/run_test.py 

excel大体结构(还在修改中,需要搭配实际进行调整)

结构说明

  1. base: 放置基本的测试方法,以及基本处理
  2. case: 后期放置测试的case。比如测试单独case,多个测试case
  3. data: 放置测试时 需要的硬数据。比如xlsx,json,或者模拟的数据、文件
  4. datacfg: 获取数据的方法,操控数据的读写
  5. main: 执行入口
  6. log: 日志的存放
  7. utils: 存放通用的工具、操作方法

基本思想

获取case相关信息

跑测试(中间包含了一些处理,比如cookie,token ,header的携带)

 cookies,token 失效,自动更新 处理

python 接口测试时token,cookie失效重新获取方法

'''
重新获取token,cookies使用
需要根据实际情况进行修改
'''
from utils.common_util import CommonUtil
from datacfg.get_dependent_data import DependentData
from base.LogUtil import my_log
log=my_log(__file__)

#check_token_exception
class TokenCheck():

    TOKEN_NOT_OK_VALUE = "Token parsing exception"
    TOKEN_NOT_OK_VALUE2 = "请求token失效"
    COOKIE_NOT_OK_VALUE =""
    SUCCESS_LOGIN_CASE_ID = "login_01"

    def __init__(self):
        self.depent_data = DependentData()
        self.comtool = CommonUtil()

    ##适配 .响应body 里包含了 失效的文字,则重新获取token
    def check_token_exception(self, response_body):
        if self.comtool.is_contain(TokenCheck.TOKEN_NOT_OK_VALUE,str(response_body) )\
                or self.comtool.is_contain( TokenCheck.TOKEN_NOT_OK_VALUE2,str(response_body)) :
            print("token失效了,重新获取")
            if self.__reget_token():
                print("重新获取token成功")
                return True
            return False
            ##
        return False

    def __reget_token(self, loginid=None):
        if not loginid:
            loginid = TokenCheck.SUCCESS_LOGIN_CASE_ID
        #重新执行,获取token接口
        ret = self.depent_data.force_runcase_by_caseid(loginid, token=True)
        return ret

需要完善,持续更新

TODO

 测试的语句可能需要数据库、或者登录服务器进行协助调整

接口用例编写的自动化或者是半自动化(swagger接口,自动转换到excel里面)

报告的优化展示(allure)

代码调整‘优化!

文档完善

平时学习记录的地址在这里:https://github.com/xuyinhao/apitest2020

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值