数据驱动模块:在测试过程中,将测试数据独立化进行保存与管理,基于管理的数据文件进行测试的驱动),而EXCEL经常作为我们的数据管理文件管理我们的测试用例

Openpyxl是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库,其功能非常强大,

一.逻辑代码层

def open_browser(txt):try:driver = getattr(webdriver,txt)()except Exception as e:print(e)driver=webdriver.Chrome()return driverClass Key:def __init__(self,txt):self.driver=open_browser(txt)self.driver.implicity_wait(10)#元素定位def locator(self,name,value):return self.driver.find_element(name,value)#输入def input(self,name,value,txt):self.locator(name,value).send_keys(txt)#点击def click(self,name,value):self.locator(name,value).click()#强制等待def sleep(self,time):sleep(time)#关闭def quit(self):self.driver.quit()

二.excel数据

sheet1:

sheet2:

三.数据驱动层

#读取Excel测试用例的数据内容,并用于自动化测试的运行#获取sheet页内容
import openpyxl
from web_keys.keys_plus import Key #导入web_keys包下的keys_plus.PY文件的Key类excel = openpyxl.load_workbook('../data/demo.xlsx')  #载入excel文件
for name in excel.sheetnames:sheet = excel[name]print('***********************{}*********************'.format(name))for values in sheet.values:  #sheet.values把一行数据当作一个元组返回,并返回所有元组if type(values[0]) is int:print('正在执行操作步骤{}:{}'.format(values[1],values[5]))#操作步骤关联参数的管理data = {}data['name']=values[2]data['value']=values[3]data['txt'] = values[4]#将为None的参数进行清理for k in list(data.keys()):if data[k] is None:del data[k]#调用操作,并传入参数if values[1] =='open_browser':key = Key(**data) #key=Key(txt='Chrome')else:getattr(key,value[1])(**data)

结合Excel进行数据驱动相关推荐

  1. 二篇、使用excel做数据驱动把数据管理起来

    做自动化测试过程中测试数据是很重要的一部分,那么怎么把测试的数据管理起来呢.这篇就重点说一下,如何使用excel做数据驱动.使用数据更好的执行. 先把数据准备好了.如下 test_data.xlsx ...

  2. Excel+DDT数据驱动实例

    一.首先安装dtt模块 数据驱动原理 1.测试数据为多个字典的list类型 2.测试类前加修饰@ddt.ddt 3.case前加修饰@ddt.data() 4.运行后用例会自动加载成N个单独的用例 二 ...

  3. 好代码是管出来的——.Net Core集成测试与数据驱动测试

    软件的单元测试关注是的软件最小可执行单元是否能够正常执行,但是软件是由一个个最小执行单元组成的集合体,单元与单元之间存在着种种依赖或联系,所以在软件开发时仅仅确保最小单元的正确往往是不够的,为了保证软 ...

  4. testng使用DataProvider+Excel实现DDT

    DDT,即数据驱动测试 Data Driver Test,我曾经记录了一篇关于python的DDT框架(Excel+DDT数据驱动实例),那么java中的DDT是怎么样的呢?在java中,可以用tes ...

  5. python xlrd读取文件报错_python利用xlrd读取excel文件始终报错原因

    1.代码按照网上百度的格式进行书写如下: 但运行后,始终报错如下: 百度了xlrd网页: 分明支持xls和xlsx两种格式的文件,但运行始终报错. 最后找到原因是因为我所读取的文件虽然是以.xls命名 ...

  6. python自动化接口测试excel脚本_python+ddt+unittest+excel+request实现接口自动化

    接口自动化测试流程:需求分析-用例设计--脚本开发--测试执行--结果分析 1.获取接口文档,根据文档获取请求方式,传输协议,请求参数,响应参数,判断测试是否通过设计用例 2.脚本开发:使用reque ...

  7. [Java版]Selenium系列:TestNG框架实现数据驱动DataProvider

    Excel实现数据驱动 测试无论做哪种自动化,最终会走向数据驱动框架模式<po.关键字> . 那么在TestNG框架中提供了@DataProvider和@Parameters注解实现数据驱 ...

  8. mysql数据驱动测试_自动化测试框架-数据驱动(2)

    5.使用Excel进行数据驱动测试 测试逻辑: (1)打开百度首页,从Excel文件中读取测试数据作为搜索关键词 (2)在搜索输入框中输入读取出搜索关键词 (3)单击搜索按钮 (4)断言搜索结果页面中 ...

  9. 数据驱动python

    数据驱动:程序不变,数据变 首先自定义一个data.txt文件,下面附data.txt文件内容供参考 data.txt gloryroad test||光荣之路 摔跤爸爸||阿米尔 超人||电影 da ...

最新文章

  1. 《用Python进行自然语言处理》第7章 从文本提取信息
  2. 【约束布局】ConstraintLayout 约束布局 ( 简介 | 引入依赖 | 基本操作 | 垂直定位约束 | 角度定位约束 | 基线约束 )
  3. [导入]微软CSS,GCR半日游--学了一样东西,什么叫做灰头土脸
  4. 【收藏】Spark之RDD的mapPartitions算子
  5. 盘点618 .NET 程序员必“败”书单
  6. 大整数加法(信息学奥赛一本通-T1168)
  7. html织梦站内搜索代码,简单三步-实现dede站内搜索功能
  8. listView基本实现
  9. I00007 打印菱形字符图案
  10. 语音识别软件_语音识别软件是什么_离线语音识别软件_企业服务汇
  11. Spring连接数据库的几种常用的方式
  12. 玩转Kinetis之教你将K60主频超到200MHz以上
  13. 硬改路由器-MW310R-AR9341篇
  14. 人工智能的认知技术,主要包含哪些?
  15. 用python画蜡笔小新的步骤_蜡笔小新 - python代码库 - 云代码
  16. 深入浅出Android性能调优,震撼来袭免费下载!
  17. 深入Java集合系列之七:Hashtable
  18. Docker构建Mycat
  19. android 主页面
  20. \u5b57\u7b26 字符转换 (Unicode字符与中文的相互转化)

热门文章

  1. 2022年9月19日学习内容
  2. POJ1417 True Liars ——种类并查集+01背包+路径** 好题
  3. 情人必看的10大电影
  4. 达龙云电脑项目夺复旦之星创业大赛冠军
  5. 图的基本概念及存储方式
  6. 智能电视TV开发---手机直播视频客户端与智能电视通信
  7. JS、jquery静态(局部)刷新页面(Ajax异步)
  8. 3.30黄金原油,沪金沪银早间市场行情分析及价格涨跌预测
  9. scala之json数据解析
  10. 浅析java中可变类型和不可变类型