Selenium数据驱动测试:解决xlrd读取Excel文件兼容性问题

云舒
云舒
发布时间:2026-10-14 | 3人浏览过
原创

本文介绍在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文件的详细指南,更多相关技术文章请持续关注本站更新。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表