zoukankan      html  css  js  c++  java
  • python自动化测试_8

    接口测试:

    md5 加密:

    import hashlib
    
    # 待加密信息
    str = 'asdas89799,.//plrmf'
    # 创建md5对象
    hl = hashlib.md5()
    # Tips
    # 此处必须声明encode
    # 若写法为hl.update(str)  报错为: Unicode-objects must be encoded before hashing
    hl.update(str.encode(encoding='utf-8'))
    hl.hexdigest()
    
    hl.update(str.encode(encoding='utf-8'))
    hl.hexdigest()
    
    print('MD5加密前为 :' + str)
    print('MD5加密后为 :' + hl.hexdigest())
    

    img

    yaml配置文件的写和读:

    import os
    from ruamel import yaml
    
    class Config():
        def get_config(self):
            dict = {"kry":"value"}
            curpath = os.path.dirname(os.path.dirname(__file__))
            
            yamlpath = os.path.join(curpath,"config.yaml")
            with open(yamlpath,'w',encoding="utf-8") as f:
                yaml.dump(dict,f,Dumper=yaml.RoundTripDumper)
            par = yaml.load(open(yamlpath,'r').read(),Loader=yaml.Loader)
            print(par)
            return par
        
        
     if __name__ == "__main__":
        get_config = Config()
        get_config = get_config.get_config()
    

    img

    xlrd 模块:

    ♦python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库
    
    import xlrd
    data = xlrd.open_workbook(filename)#如果路径或者文件名有中文给加一个r拜师原生字符
    
    table = data.sheets()[0]          #通过索引顺序获取
    table = data.sheet_by_index(sheet_indx)) #通过索引顺序获取
    table = data.sheet_by_name(sheet_name)#通过名称获取
    以上三个函数都会返回一个xlrd.sheet.Sheet()对象
    
    names = data.sheet_names()    #返回book中所有工作表的名字
    data.sheet_loaded(sheet_name or indx)   # 检查某个sheet是否导入完毕
    
    nrows = table.nrows  #获取该sheet中的有效行数
    table.row(rowx)  #返回由该行中所有的单元格对象组成的列表
    table.row_slice(rowx)  #返回由该列中所有的单元格对象组成的列表
    table.row_types(rowx, start_colx=0, end_colx=None)    #返回由该行中所有单元格的数据类型组成的列表
    table.row_values(rowx, start_colx=0, end_colx=None)   #返回由该行中所有单元格的数据组成的列表
    table.row_len(rowx) #返回该列的有效单元格长度
    
    ncols = table.ncols   #获取列表的有效列数
    table.col(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
    table.col_slice(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
    table.col_types(colx, start_rowx=0, end_rowx=None)    #返回由该列中所有单元格的数据类型组成的列表
    table.col_values(colx, start_rowx=0, end_rowx=None)   #返回由该列中所有单元格的数据组成的列表
    
    table.cell(rowx,colx)   #返回单元格对象
    
    table.cell_type(rowx,colx)    #返回单元格中的数据类型
    
    table.cell_value(rowx,colx)   #返回单元格中的数据
    
    table.cell_xf_index(rowx, colx)   
    
    #打开文件
    file = open(filename,'rb')
    
    #打开excel文件
    workbook = xlrd.open_workbook(filename)
    
    #获取sheet
    sheet = workbook.sheet_by_name(sheetname)
    
    filename = filename.decode('utf-8')  # 转码
    
  • 相关阅读:
    Linux下安装memcached
    Attempt to write to field 'android.support.v4.app.FragmentManagerImpl android.support.v4.app.Fragment.mFragmentManager' on a null object reference
    EmbossMaskFilter BlurMaskFilter 学习
    Canvas裁剪和Region、RegionIterator
    (转载)ANDROID STRINGS.XML 中的特殊字符转义
    给RelativeLayout设置背景,无效果bug解决
    Intent Flag实际项目 -- 超时跳转登录界面并清理前面所有activity
    第十章 移动端项目组管理
    第九章 竞品技术分析
    第四章 android 命名规范和编码规范
  • 原文地址:https://www.cnblogs.com/shaozheng/p/12875729.html
Copyright © 2011-2022 走看看