zoukankan      html  css  js  c++  java
  • 接口测试入门(二)

    在用例知道了以后,首先我们考虑怎么样来操作这个Excel表。拿到这个表的内容。

    其中内容包括:行数,列数,单元格的内容等等。

    主要运用到Python的xlrd,xlutils.copy的库。

    在开始我们操作表,需要一个表的地址,拿到表。

    file_name = "../dataconfig/case.xls"
    data = xlrd.open_workbook(file_name)
    tables = data.sheets()[sheet_id] #sheet_id需要传进去
    return tables

    这段代码可以放进 __init__里面,重构一下,构造一个拿到表数据的方法。因为后面所有的方法都需要打开文件。

    #获取单元格的行数
    	def get_lines(self):
    		tables = self.data
    		return tables.nrows
    
    	#获取某一个单元格的内容
    	def get_cell_value(self,row,col):
    		return self.data.cell_value(row,col)
    
    	#写入数据
    	def write_value(self,row,col,value):
    		'''
    		写入excel数据
    		row,col,value
    		'''
    		read_data = xlrd.open_workbook(self.file_name)
    		write_data = copy(read_data)
    		sheet_data = write_data.get_sheet(0)
    		sheet_data.write(row,col,value)
    		write_data.save(self.file_name)
    
    	#根据对应的caseid 找到对应行的内容
    	def get_rows_data(self,case_id):
    		row_num = self.get_row_num(case_id)
    		rows_data = self.get_row_values(row_num)
    		return rows_data
    
    	#根据对应的caseid找到对应的行号
    	def get_row_num(self,case_id):
    		num = 0
    		clols_data = self.get_cols_data()
    		for col_data in clols_data:
    			if case_id in col_data:
    				return num
    			num = num+1
    
    
    	#根据行号,找到该行的内容
    	def get_row_values(self,row):
    		tables = self.data
    		row_data = tables.row_values(row)
    		return row_data
    
    	#获取某一列的内容
    	def get_cols_data(self,col_id=None):
    		if col_id != None:
    			cols = self.data.col_values(col_id)
    		else:
    			cols = self.data.col_values(0)
    		return cols


  • 相关阅读:
    第07组 Beta冲刺(2/5)
    第07组 Beta冲刺(1/5)
    第07组 Alpha事后诸葛亮
    第07组 Alpha冲刺(5/6)
    第07组 Alpha冲刺(6/6)
    软工实践个人总结
    第01组 Beta版本演示
    第01组 Beta冲刺(5/5)
    第01组 Beta冲刺(4/5)
    第01组 Beta冲刺(3/5)
  • 原文地址:https://www.cnblogs.com/shrimpPython/p/10486463.html
Copyright © 2011-2022 走看看