#!user/bin/env python
# coding=utf-
# @Author : Dang
# @Time : // :
# @Email : @qq.com
# @File :
# @Description:
import xlrd
import xlwt
import os
import time
from openpyxl import load_workbook
strtime = time.strftime('%Y-%m-%d_%H_%M_%S') # def readExcelDataByName(filename, sheetName):
# '''读取Excel文件和表名'''
# wb = xlrd.open_workbook(filename)
# # sheet=data.sheet_by_index()#通过索引顺序获取,0表示第一张表
# # sheets = data.sheet_names()#获取文件中的表名
# sheet = wb.sheet_by_name(sheetName)
# ncols = sheet.ncols
# # 获取行数
# nrows = sheet.nrows
# print("nrows %d, ncols %d" % (nrows, ncols))
# total_data=url_list=[] # #读取url
# for m in range(,nrows):
# # print(sheet.cell_value(m,))
# # print(sheet.cell_value(m,))
# # print(sheet.cell_value(m,))
# # print(sheet.cell_value(m,))
# url_list.append(sheet.cell_value(m,))
# url_list.append(sheet.cell_value(m,))
# url_list.append(sheet.cell_value(m,))
# url_list.append(sheet.cell_value(m,))
# total_data.append(url_list)
# # print(url_list)
# url_list=[] # # print(total_data)
# return total_data
import xlrd import unittest import ddt class ExcelUtil(object): def __init__(self, excelPath, sheetName):
self.data = xlrd.open_workbook(excelPath)
self.table = self.data.sheet_by_name(sheetName) #get titles
self.row = self.table.row_values() #get rows number
self.rowNum = self.table.nrows
print(self.rowNum)
#get columns number
self.colNum = self.table.ncols
print(self.colNum) #the current column
self.curRowNo = def next(self):
r = []
while self.hasNext():
s = {}
col = self.table.row_values(self.curRowNo)
i = self.colNum
for x in range(i):
s[self.row[x]] = col[x]
r.append(s)
self.curRowNo +=
print(r)
return r def hasNext(self):
if self.rowNum == or self.rowNum <= self.curRowNo :
return False
else:
return True
# if __name__ == '__main__':
# readExcelDataByName('TestCase.xlsx', 'TestCase')
# ExcelUtil=ExcelUtil("TestCase.xlsx", "TestCase")
# ExcelUtil.next() excel = ExcelUtil("TestCase.xlsx", "TestCase")
# excel.next() @ddt.ddt
class DataTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
print('start') @classmethod
def tearDownClass(cls):
print('stop') @ddt.data(*excel.next())
def testLogin(self, data):
print(data['Request URL'])
print(data['Request Method'])
print(data['Request Data']) if __name__ == "__main__":
suite = unittest.TestLoader().loadTestsFromTestCase(DataTest)
unittest.TextTestRunner(verbosity=).run(suite)

最新文章

  1. Android Studio in OSX 提高工作效率的快捷键
  2. IOS第11天(4:UIDatePicker时间选择,和键盘处理,加载xib文件,代理模式)
  3. mac 下的 top 命令
  4. Hibernate4+Spring JPA+SpringMVC+Volecity搭建web应用(一)
  5. js——倒计时
  6. 解决 dyld: Library not loaded:Reason: image not found
  7. C++学习笔记13-类继承
  8. .Net程序员学用Oracle系列(19):我知道的导出和导入
  9. Eclipse: eclipse文本文件编码格式更改(GBK——UTF-8)
  10. 2019浙大校赛--E--Potion(签到水题)
  11. MyBatis源码解析(十一)——Parsing解析模块之通用标记解析器(GenericTokenParser)与标记处理器(TokenHandler)
  12. 浅了解:react为何需要设定唯一key值(antd-table)
  13. C++ Boost库简介(转载)
  14. shell入门(二)——面试题实例
  15. DataGridView之编码列重绘
  16. DNS服务器的维护与故障排除
  17. 秒杀多线程第六篇 经典线程同步 事件Event
  18. Django From组件 fields widgets
  19. Linux命令详解-printf
  20. 如何删除 Windows 10 系统生成的 WindowsApps 文件夹

热门文章

  1. 分布式事务框架-fescar
  2. sshd_config注释
  3. 2.1 GO 变量定义
  4. ios中页面底部输入框,position:fixed元素的问题
  5. ETL的两种架构(ETL架构和ELT架构)
  6. 在Mac上安装mysql
  7. jQuery自动完成插件flexselect
  8. 闲里偷忙的CPU-某个kwoker进程忙
  9. 性能测试工具LoadRunner06-LR之Virtual User Generator 事务(Transaction)
  10. PHP速学