python接入excel_通过Python导入Excel数据,实现自动化数据测试

一、安装openpyxl

pip install openpyxl

二、获取Excel表格数据

以下是我的表格数据

#导入load_workbook工作表

from openpyxl import load_workbook

#创建粘贴工作表数据的类

class ParseExcel():

#工作表路径及工作表的名字

def __init__(self,excelPath,sheetName):

#加载表格,读取数据

self.wb=load_workbook(excelPath)

#通过工作表表名获取当前表格

self.sheet=self.wb.get_sheet_by_name(sheetName)

self.maxRowNum=self.sheet.max_row

#从表格中获取数据

def getDatasFromSheet(self):

#创建需要获取数据的列表

dataList=[]

#从第二行开始读取表格数据

for line in self.sheet.rows[1:]:

#创建列表存放每一行数据

tmpList=[]

tmpList.append(line[0].value)

tmpList.append(line[1].value)

#将每一行数据加入到总数据列表中

dataList.append(tmpList)

#print(dataList)

return dataList

if __name__ =='__main__':

excelPath='E:/python/test/webSelenium/data_7/data/data1.xlsx'

sheetName='Sheet1'

#实例化数据

pe = ParseExcel(excelPath,sheetName)

#获取工作表数据

for i in pe.getDatasFromSheet():

print(i[0])

三、Excel与ddt 结合

import ddt

import unittest,time

from selenium import webdriver;

#从上面创建的Python文件中导入ParseExcel

from count_file.Excelutil import ParseExcel

#数据调用需要传入的路径及工作表名字及对函数进行调用

excelPath = 'E:/python/test/webSelenium/data_7/data/data1.xlsx'

sheetName = 'Sheet1'

excel = ParseExcel(excelPath, sheetName)

@ddt.ddt

class DoubanTest(unittest.TestCase):

def setUp(self):

def tearDown(self):

self.driver.quit()

#传入数据

@ddt.data( * excel.getDatasFromSheet())

def test_dataDriverByFile(self,data):

#将传入的数据

testData,exceptData=data

self.driver.get('百度一下,你就知道')

time.sleep(1)

self.driver.find_element_by_id('kw').send_keys(testData)

time.sleep(2)

self.driver.find_element_by_id('su').click()

time.sleep(2)

self.assertIn( exceptData,self.driver.page_source)

if __name__ =='__main__':

unittest.main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值