当前位置: 首页 > wzjs >正文

网店推广新思维苏州seo招聘

网店推广新思维,苏州seo招聘,个人简历生成器,手表设计网站Excel数据驱动​(handle_excel) 实现逻辑:​ 通过load_workbook加载Excel,用iter_rows逐行读取数据,将表头和用例数据用zipdict组合成字典列表,实现测试数据与代码解耦,支持多Sheet管理。 关键函…

 Excel数据驱动​(handle_excel)

  • 实现逻辑:​
    通过load_workbook加载Excel,用iter_rows逐行读取数据,将表头和用例数据用zip+dict组合成字典列表,实现测试数据与代码解耦,支持多Sheet管理。

    关键函数:​

  • load_workbook():加载Excel文件
  • iter_rows(values_only=True):按行读取数据
  • dict(zip()):将表头与数据映射为字典
from openpyxl import load_workbookclass HandleExcel:def __init__(self,file_name):  #file_name: 测试用例文件名称(绝对路径)self.wb_obj = load_workbook(filename=file_name) #load_workbook加载excel#获取所有excel中sheet的名称self.sheet_names = self.wb_obj.sheetnamesdef get_excel_test_cases(self,sheet_name):  #sheet_name: excel中sheet名称#临时变量存放数据cases_list = []  #获取指定表单对象sheet_obj = self.wb_obj[sheet_name]#iter_rows迭代所有行数据,按行读取封装成list输出结果类似于[('id','title'),(1,'登陆成功')],values_only是False返回对象,True返回单元格对应数据,datas获取表单sheet中所有数据datas = list(sheet_obj.iter_rows(values_only=True))#获取表头case_title = datas[0] #获取表数据case_datas  = datas[1:] #遍历每一行数据for case in case_datas:#zip(key,val)把两个元素压缩在一起,再把每一行数据使用dict转换成字典类型,zip函数是python的内置函数result = dict(zip(case_title,case))cases_list.append(result)self.close_file()return cases_listdef close_file(self):#关闭excelself.wb_obj.close()  if __name__ == '__main__':#存放excel测试数据的文件名(放本目录下的路径)cl = HandleExcel(file_name="case_data.xlsx",sheet_name="login")cl.get_excel_test_cases()

动态数据生成​(handle_phone)

  • 封装Faker生成器与数据库查询,通过`phone_number()`生成随机号+`SELECT`校验注册状态,循环获取有效未注册手机号,解决测试数据动态生成问题。
  • **实现逻辑:​**
    1. 使用Faker库生成随机中文手机号
    2. 通过SQL查询校验手机号是否已注册
    3. 循环生成直到获取未注册的有效手机号

  • **关键函数:​**

    - `Faker().phone_number()`:生成虚拟手机号
    - `__check_phone()`:私有方法执行数据库校验
    - `get_phone()`:主方法实现生成→校验→返回的闭环逻辑
  • **解决的问题:​**

    1. 自动化生成未注册的测试手机号
    2. 避免测试数据重复导致的用例失败
    3. 动态生成测试数据替代硬编码
from faker import Faker
from tools.handle_db import mysqlclass HandlePhone:def __init__(self):self.fk = Faker(locale="zh-cn")def __check_phone(self,phone):sql = "SELECT * FROM 表名 WHERE user_mobile = '{}'".format(phone)#去数据库查询是否注册,注册了再重新生成,直到在数据库中找不到,就表示未注册;result = mysql.get_datas(sql=sql)return resultdef get_phone(self):while True:#生成新的手机号phone = self.fk.phone_number()# 去数据库校验是否已注册result = self.__check_phone(phone=phone)if len(result)>0:#手机号已存在,需要重新生成手机号continueelse:return phone

全局配置管理​(setting.py)

  • 通过字典结构分类存储数据库连接、用户凭证、文件参数等配置项,实现配置数据与测试代码解耦,解决多环境参数硬编码维护难题。
  • **实现逻辑:​**
  1. 集中管理测试环境配置参数
  2. 采用字典结构分类存储不同功能模块配置
  3. 实现配置数据与业务代码分离
  • **关键配置项:​**
  1. - `user_info`:系统登录凭证
  2. - `mysql_info`:数据库连接四要素
  3. - `image_info`:文件上传参数
  4. - `assert_db_info`:动态路径断言参数
  5. - `setup_sql_info`:前置SQL变量替换值
#setting.py 用于存放当前框架中的所有配置信息(使用不频繁,修改不频繁的数据)
#通过配置文件传参-软编码;在代码中写死-硬编码;#管理者登陆账号信息
user_info = {"user_name":"xdfjewg","password":"dfergbu"}#图片上传信息
image_info = {"file_name":"song.png","file_type":"image/png"}#连接数据库信息
mysql_info = {"host":"11.111.111.11","post":"3306","user":"lemon","password":"vdnjkvs","db":"fsegjvskjv"}#数据库断言替换信息,如"file_path":"2022/04/cd54sdgruissafmscsd/vds"图片上传路径
assert_db_info = {}#前置sql语句执行需要替换的参数
setup_sql_info = {}
http://www.dtcms.com/wzjs/197020.html

相关文章:

  • wordpress 自定义内容类型优化大师下载电脑版
  • 一区适合晚上一个人看b站谷歌官方app下载
  • 做网站资讯新手怎样做网络推广
  • 外贸网站零基础建站安卓优化大师2021
  • 做网站设计多少钱北京网络营销公司排名
  • 天津网站建设培训班常州网站优化
  • 做菠菜网站多少钱免费下优化大师
  • 房地产公司网站建设与推广方案制造企业网站建设
  • 怎样做网站教程知名网站排名
  • PHP与网站建设的课后笔记营销渠道
  • 企业做定制网站的好处全媒体运营师报考官网在哪里
  • 网站建设需要多少人员项目推广
  • 网站设计建设流程图今日腾讯新闻最新消息
  • 企业网站制作建设直播营销策划方案范文
  • 湖北 网站建设牛奶软文广告营销
  • wordpress页面添加图片不显示图片长治seo顾问
  • 网站系统繁忙关键词歌词任然
  • 广西建设局建设行政主管部网站俄罗斯搜索引擎入口
  • 上海建桥学院门户网站提供seo服务
  • 室内设计装修风格大全东莞搜索优化十年乐云seo
  • 工业软件开发技术专业seo技术培训课程
  • 站长工具排行榜seo排名赚app
  • 做网站去哪里找广告主网站怎么快速被百度收录
  • 医院网站 整站源码西安网站建设网络推广
  • 做国外网站用什么颜色今日热点新闻事件摘抄50字
  • 信誉比较好的网上做任务的网站新媒体运营工作是什么
  • 课程视频网站建设的必要性搜索引擎关键词怎么优化
  • 网站建设及搜索推广开户
  • 个人网站广告联盟搭建四川seo整站优化
  • 长沙网站设计哪家好佛山做网站推广的公司