Python自动化必会技能-Excel文件读取

在这里插入图片描述

01 重点

在自动化测试过程中,经常需要使用excel文件来存储测试用例,那么在表格内设计好了测试用例数据后,如何通过自动化读取呢?此时就需要测试小姐姐动手写“代码”了~

本文主要介绍通过python来读取表格数据。Python读取表格的方式大概有三种(如下图介绍),本文侧重点使用xlrd模块来读取excel数据。

图片

读取excel文件,主要掌握以下几个结果内容:

  • 打开文件
  • 读取工作表
  • 遍历每个单元格,组成字典(for循环语句)
  • 字典组成列表(for循环语句)

读取表格的相关方法介绍如下:

图片

02 抓包获取接口数据

进行接口自动化时,一般公司内部开发都会维护一份接口文档,测试人员可从该文档获取接口的相关信息,也可使用抓包工具获取接口信息。

本文案例较为简单,就从抓包来获取数据,当然如果是真的进行接口自动化测试时,就需要开发提供详细的接口数据,不仅包括请求地址、入参,还需要提供各个入参对应的值,以及接口成功的状态标识。

1、获取接口请求基础数据

利用抓包工具charles获取需要进行自动化测试的接口

图片

得到信息有两个,一个是请求地址url,一个是请求头header

  • url:http:/**********(域名) /wapi/sso/login?t=1592880704818
  • header:Content-Type=application/json;charset=UTF-8

(请求头的含义大家可以自行百度,这里不做过多的说明)

  • 请求方式

接口请求的常见方式有post和get,本文案例的请求使用的是post方式

2、获取接口请求的入参数据

在抓包工具上,切换到Request页面,可以看到入参的数据,如下图:

图片

得到信息:

{
"loginId": "***",
"password": "***"
}

从以上数据可以看出,接口入参是以字典的形式传递的,key=loginId,对用的value=”” (此处的表示用户的用户名~由于涉及到个人隐私问题,故使用号代替)

03 设计测试用例

以excel表格来存储用例,第一行为参数,第二行开始为入参的值,第一列为用例标题,具体如下:

图片

得到信息:

  • Excel文件路径地址
  • 工作表名称
  • 用例入参、入参对应的值、用例标题

(本文的测试用例只是范例,实际测试过程中,肯定不止这两条用例)

04 Python脚本

从抓包工具charles抓取到的数据看,我们需要获取到两种数据:

  • 13位时间戳
  • 接口的入参

时间戳脚本

Python实现获取13位的时间戳脚本如下:
图片

读取测试用例脚本

通过抓包数据可以看到入参的数据是字典的形式,一个key对应一个value。

所以接口的测试用例的脚本设计分为三个部分:

  • 读取对应的excel文件和用例所在的工作表
  • 将接口的入参和值组成字典
  • 将组合好的入参字典,封装成列表形式
  • 根据用例标题,读取对应的入参数据

1、将请求的入参与测试数据,组成字典形式

如下图:一个组合的入参+测试数据,相当于一条用例

图片

2、将每条用例再跟用例标题,组成字典形式

如下图:后续可以根据用例标题,获取用例内容(入参+测试数据)

图片

3、将通过用例标题,读取测试用例

图片

(高温提醒:最后的最后实在不会把代码敲呀敲一遍把表格用例更新直接运行脚本就成)

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
在这里插入图片描述

最后: 可以在公众号:伤心的辣条 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。你可以加入我们的测试技术交流扣扣群:914172719(里面有各种软件测试资源和技术讨论)

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>