Selenium数据驱动测试:解决xlrd读取Excel文件兼容性问题
本文介绍在Selenium数据驱动测试中使用xlrd库读取Excel文件的常见报错及解决方案。针对xlrd 2.0.1版本仅支持.xls格式的问题,提供了使用旧版库或转换文件格式两种解决方法,并附带完整的Python测试脚本示例。
安装xlrd库
首先,需要通过pip3命令安装xlrd库,执行命令:pip3 install xlrd。

Selenium读取Excel脚本示例
接下来展示一个具体的测试脚本示例,用于演示如何读取Excel数据。
import pytest
import xlrd
def get_data():
filename="F:\\学习\\自动化测试\\selenium自动化测试\\selenium_test\\data\\test.xls"
# 读取工作簿
wb=xlrd.open_workbook(filename)
# 读取第一个sheet页
sheet=wb.sheet_by_index(0)
# 读取行
rows=sheet.nrows
# 读取列
cols=sheet.ncols
lst=[]
for row in range(rows):
for col in range(cols):
#根据行列获得单元格数据
cell_data=sheet.cell_value(row,col)
lst.append(cell_data)
return lst
@pytest.mark.parametrize('name',get_data())
def test1(name):
print(name)
if __name__ == '__main__':
pytest.main(['-sv','test.xls'])
运行上述脚本后,预期输出结果如下所示。

常见问题与解决方案
在实际操作中,可能会遇到运行测试脚本时抛出错误的常见问题。

经排查,错误原因在于近期xlrd库已更新至2.0.1版本,该版本仅支持.xls格式的Excel文件,不再兼容.xlsx。

针对上述兼容性问题,可以采取以下解决方法。
方法一:在测试脚本中直接使用.xls格式的Excel文件进行读取。
方法二:如果必须使用.xlsx文件或希望保持库的版本更新,可以回退安装旧版本的xlrd。具体操作是在命令行(cmd)中执行以下卸载和安装命令。
首先卸载当前版本的xlrd,命令为:pip3 uninstall xlrd。
随后安装指定版本的xlrd,命令为:pip3 install xlrd==1.2.0。

本内容整理自极客时间课程中关于Selenium自动化测试的学习总结。
以上是关于Selenium数据驱动测试中读取Excel文件的详细指南,更多相关技术文章请持续关注本站更新。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









