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

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

今天就先学习到这里吧。

每天进步一点点,加油!

相关推荐
笨鸟先飞,勤能补拙4 小时前
AI 赋能网络安全:技术全景、成熟度评估与实战案例
人工智能·python·安全·web安全·网络安全·sqlite·github
长和信泰光伏储能5 小时前
京津冀光伏发电:绿色能源的未来之路
python·能源
浦信仿真大讲堂5 小时前
从重复操作到自动化闭环:如何让 CST 与 Python 真正协同起来
python·自动化·cst·仿真软件·达索软件
Gu Gu Study6 小时前
ScoutLoop开放域深度研究引擎(agent的初步设计想法)
人工智能·python
卷无止境6 小时前
写代码这件事,到底该讲究点什么?
后端·python
卷无止境7 小时前
循环复杂度到底在算什么,Python 代码怎么才能写得让人一看就懂
后端·python
lpfasd1237 小时前
MediaCrawler 项目深度分析
chrome·python·chrome devtools
Dxy12393102167 小时前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
bamb008 小时前
一个项目带你入门AI应用开发01
python
0566468 小时前
Python康复训练——常用标准库
开发语言·python·学习