Selenium + Python 自动化测试19(补充-读取各种文件数据操作)

我们的目标是:按照这一套资料学习下来,大家可以独立完成自动化测试的任务。

上一篇我们讨论了数据驱动测试中如何完成重复的测试实例,今天我们补充一些读取各种文件的方法。

本篇文章我们讨论一下如何使用读取txt、CSV、Excel文件,Excel文件之前文章已经大概说明了,这里是做一个总结。

1、txt 文件的读取

txt是我们经常需要操作的文本类型,可以由如下方法操作:

1)read():读取整个文件

2)readline():读取一行数据

3)readline()分行读取全部的数据

举例说明,如下图所示的user_password.txt:

复制代码
#coding = utf-8

user_password =open("user_password.txt","r")  #打开文件

file_lines =user_password.readlines()  #读取文件

user_password.close()#关闭


for line infile_lines:#打印读取的文件

    print(line)

查看结果:

小练习,想将用户名和密码分开的话,用split进行分割:

复制代码
#用户名和密码分开

user=line.split(",")[0]

password=line.split(",")[1]

print("用户名为%s,密码是:%s"%(user,password))

2、CSV文件读取

若是还是之前的数据,在CSV文件中存储的。

内容如下:

读取csv方法:导入csv模块>reader()读取>输出信息查看

复制代码
#coding = utf-8

import csv  #导入csv 包

user_file =csv.reader(open('user_password1.csv','r'))  #打开文档

#输出信息

for user_info inuser_file:print(user_info)

执行后输出结果:

'xiaoming', '123456'

'xiaotong', '135790'

'xiaoli', '112233'

3、Excel文件读取

1)引入xlrd 库

python 读取Excel文件,需要先安装xlrd 库,可以直接在命令行输入:pip install xlrd

上面的提示说明我们之前已经安装了。

2)编写读取Excel 文件函数
复制代码
需求:如下图Excel表。通过Excel来获取数据,希望返回字典组成的列表:[{"username":" standard_user","password":"secret_sauce"},

# {"username":" visual_user","password":"secret_sauce"},{"username":" error_user","password":"password_NG"}]

编写函数实现:

复制代码
def get_excel_data(filename,sheetnum):path ='login_data.xlsx'

    book_data =xlrd.open_workbook(path) #打开文档

    book_sheet=book_data.sheet_by_index(0) #打开Excel中第一个表

    rows_num =book_sheet.nrows  #sheet1 行数,row:行

    rows0 =book_sheet.row_values(0) #第一行的各个名称作为字典的键,列表

    rows0_num =len(rows0)   #第一行列表的长度即为数据的列数



    data_list =[ ]  #存放读取的数据

    for i inrange(1,rows_num):rows_data =book_sheet.row_values(i) #取出每一行的值作为列表,列表的每一项为一个字典

        rows_dir ={ }

        fory inrange(0,rows0_num):#将每一列的值与每一行对应起来

            rows_dir[rows0[y]] =rows_data[y] #键值对应

        data_list.append(rows_dir)   #每个字典插入到列表中

    return data_list

输出结果如下,方便后面使用

今天就先学习到这里吧。

每天进步一点点,加油!

相关推荐
SamChan9020 分钟前
Python+OpenCV检测PDF翻译后排版偏移:像素级格式一致性验证
python·opencv·ai·pdf·wpf
会博通·代码搬运工21 分钟前
双层PDF技术实现与档案数字化系统的API集成实践
数据库·人工智能·分布式·python·计算机视觉·api集成
健康平安的活着23 分钟前
java中批量查询+stream返回map提高查询效率
java·windows·python
无线通信科研笔记26 分钟前
IEEE TWC 2026 论文精读与完整复现|H-PASS:机械—电子双重可重构波束成形
论文阅读·人工智能·笔记·python·论文笔记
青 春 记 忆33 分钟前
零基础入门python35:Django用户登录与权限边界
python·django·后端开发
淼澄研学38 分钟前
LangChain构建Prompt模板解决Python长尾报错实操
python·langchain·prompt
枫叶v.42 分钟前
DeepSeek Harness(DSH)插件开发保姆级教程:从 0 到 1 快速写出第一个插件
python
Htr_1 小时前
Python面向对象编程:类与对象基础
开发语言·python
muddjsv1 小时前
Python 神经网络入门:用 scikit-learn 完成 MLP 分类与回归
python·神经网络·scikit-learn
Java后端的Ai之路1 小时前
09、Python组合模式
开发语言·人工智能·python·docker·组合模式