• python-装饰器&自动化框架搭建


    装饰器

    步骤分解:

    1 #装饰器, 器就是函数,装饰函数的意思
    2 #在不改变原来函数的调用方式、代码的情况下,给函数增加新功能。
    3 
    4 def zjr(name):
    5     print(name)
    6 ahung = zjr
    7 #函数即变量
    8 ahung('hhh')

    结果:将zjr这个变量赋值给ahung这个变量,所以ahung也能调用函数

    1 def taotao():
    2     print('我是涛涛')
    3 def timer(func):#timer函数传参传的是一个函数
    4     func()
    5 timer(taotao)

    结果:

    简单装饰器

    1 def timer(func):#timer函数传参传的是一个函数
    2     def add():
    3         print('开始挣钱')
    4         func()
    5     return add
    6 def taotao():
    7     print('我是涛涛')
    8 taotao = timer(taotao)
    9 taotao()

    原理:

    1 def timer(func):#timer函数传参传的是一个函数
    2     def add():
    3         print('开始挣钱')
    4         func()
    5     return add
    6 @timer #语法糖 相当于 taotao=timer(taotao)
    7 def taotao():
    8     print('我是涛涛')
    9 taotao()

     重要****

    第一个接口自动化的框架

     1.读取测试用例

     1 import xlrd
     2 def readExcel(file_path):
     3     try:
     4         book  = xlrd.open_workbook(file_path)
     5     except Exception as e:
     6         log.error('打开用例出错,文件名是%s'%file_path)
     7         return []
     8     else:
     9         all_case = [] #存放所有的用例
    10         sheet = book.sheet_by_index(0)
    11         for i in range(1,sheet.nrows):
    12             #1代表从第二行开始,第一行是标题
    13             #sheet.nrows是指一共有多少行数据
    14             row_data = sheet.row_values(i)#获得一整行数据
    15             all_case.append(row_data[4:8])#所有用例
    16             # url, method, data, check = row_data[4],row_data[5],row_data[6],row_data[7]
    17             #url,method,data,check这四列
    18         return all_case
    19 res = readExcel(r'C:UsersMezhouPycharmProjectsuntitledday10atpcases测试用例.xlsx')
    20 print(res)

    测试结果:获取到了测试用例集

  • 相关阅读:
    IntelliJ IDEA基本设置
    git安装
    Git的作用与安装
    git是什么
    SpringMVC控制器类方法的返回值
    SpringMVC中Model机制
    什么是Nosql
    如何使用Jedis操作redis
    redis中数据类型操作命令
    redis的全局命令
  • 原文地址:https://www.cnblogs.com/Mezhou/p/9451534.html
Copyright © 2020-2023  润新知