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

news2024/9/21 5:35:16

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": "***"
}
  • 1
  • 2
  • 3
  • 4

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

03 设计测试用例

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

图片

得到信息:

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

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

04 Python脚本

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

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

时间戳脚本

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

读取测试用例脚本

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

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

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

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

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

图片

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

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

图片

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

图片

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

 最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2098943.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言的函数递归

目录 前言 一、递归是什么? 1. 递归的思想 2. 递归的限制条件 二、递归举例 1. 求n的阶乘 1.1 思路分析 1.2 画图推演 2. 顺序打印⼀个整数的每⼀位 2.1 思路分析 2.2 画图推演 三、递归与迭代 四、求第n个斐波那契数 总结 前言 我们在函数上已经非常…

《父母爱情》:找结婚对象,别只看有房有车有颜,这4个特点更重要!

点击上方△腾阳 关注 转载请联系授权 你好,我是腾阳。 最近,我重温了电视剧《父母爱情》,不禁被剧中人物的情感纠葛和生活琐事深深吸引。 在当今社会,许多人在选择结婚对象时,往往只关注房子、车子、颜值&#xff0…

2020年B题高穿越沙漠教社杯全国大学生数学建模竞赛题目与分析

↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ​ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓…

DHECDH密钥交互算法

1. 引言 在现代通信中,数据的安全性至关重要。无论是网络浏览、电子邮件,还是移动支付,保护数据不被窃听和篡改都是首要任务。密钥交换是保障通信安全的关键技术之一,其中最著名的两个算法是 Diffie-Hellman (DH) 和 椭圆曲线 Di…

用Python实现时间序列模型实战——Day 8: 季节性ARIMA模型 (SARIMA)

一、学习内容 1. SARIMA 模型的定义与公式推导 SARIMA 模型: SARIMA 模型是扩展了 ARIMA 模型的一种方法,全称为季节性自回归积分滑动平均模型(Seasonal AutoRegressive Integrated Moving Average)。它结合了 ARIMA 模型的非季…

和字符串有关的经典OJ题——字符串的逆置和字符串的翻转

学习完字符串有关的函数之后,那当然在这个章节有两道经典的子题也要给大家分享一下。 分别是字符串的逆置和字符串的翻转。 一、字符串的逆置: 1. 问题描述: 问题很容易理解:对于用户任意给定的字符串,就比如说是原…

MFC自定义消息实例

1、新建一个SHOW名称的对话框文件 2、在SHOWDlg.h中添加代码 #define WM_Display (WM_USER100)afx_msg LRESULT OnDisplay(WPARAM wParam, LPARAM lParam);3、在SHOWDlg.cpp中添加代码 BEGIN_MESSAGE_MAP(CSHOWDlg, CDialog)...ON_MESSAGE(WM_Display, OnDisplay) END_MESSA…

全面解读 HTTP 缓存机制:200 内存与硬盘缓存、304 状态码

更多内容:孔乙己大叔 在探讨网页性能优化时,HTTP 缓存机制是不可或缺的一环。它不仅能够减少数据传输量,降低带宽消耗,还能显著提升网页的加载速度和用户体验。本文将深入解析 HTTP 状态码 200 和 304 在缓存机制中的作用&#xf…

不懂就问,净水器到底过滤了什么?

在水质问题日益受到关注的今天,净水器已成为许多家庭的必备品。然而,对于净水器究竟能够过滤掉多少脏东西,很多人可能并不十分清楚。 净水器的核心功能是去除水中的杂质和有害物质,确保我们饮用的水更加安全和健康。这就如同我们…

【kafka】在Linux系统中部署配置Kafka的详细用法教程分享

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…

零工市场 Java 版源码开发:开启灵活就业新潮流

现如今,数字化经济发展的越来越迅速,那么灵活就业的方式也就更加受到大众的青睐。其中,零工市场的兴起为求职者和招聘方提供了更加便捷、高效的对接平台。 系统概述 零工市场系统是一个连接求职者和招聘方的在线平台,主要功能包…

Carmeker C接口

本文主要是简单介绍如何将C代码的模型嵌入到carmaker中运行 一.项目创建与例程生成 在创建项目的时候勾选source选项,勾选后才能在项目目录下生成src的文件夹 在src文件夹下,存在大量IPG的例程,这些例程简单介绍了如何使用了src的接口 编译…

递归 与 dfs 综合练习(四)

目录 一、单词搜索 1.题目链接:79. 单词搜索 2.题目描述: 3.解法 🌴算法思路: 🌴算法代码: 一、黄金矿工 1.题目链接:1219. 黄金矿工 2.题目描述: 3.解法 🌴算…

《从C/C++到Java入门指南》- 25.final 关键字

final 关键字 final 变量 final变量可以理解为C中的const,变量一经定义无法修改。 public class Main {public static void main(String args[]) {final double PI 3.1415926;System.out.println(PI);// PI 3.14; // 尝试修改会报错} }final 方法 一个定义为f…

私有仓库

创建私有仓库,在企业中分享项⽬ # 创建仓库 # 重启docker服务 # 为要上传的镜像添加标记 1.拉取registry 2.创建挂载⽬录 3.启动容器,映射端⼝,挂载⽬录 4.访问仓库 5.配置pull和push,修改daemon.json 6.修改了配置⽂件,重启docke…

WordPress资源产品展示类主题 官网主题 CeoNova-Pro_v4.4

WordPress资源产品展示类主题 官网主题 CeoNova-Pro_v4.4 开心版 CeoNova-Pro主题是一款轻量级、且简洁大气、产品官网类主题,定位于高端产品官网、同时包含了知识付费、定制服务、问答社区、论坛交流、网址导航、以及付费产品购买下载等全方位覆盖。 CeoNova主题…

C#和数据类型转换

C#是一种强类型语言,这意味着每个变量的类型在编译时都是已知的。数据类型转换是指将一种数据类型的值转换为另一种数据类型的过程。在C#中,数据类型转换分为隐式转换和显式转换。本文将详细探讨这两种转换方式,并提供字符转16进制的解决方案…

除尘雾炮机的寿命一般是多久呢,需要维护吗

除尘雾炮机的寿命一般是5-10年左右,但具体寿命会受到设备质量、使用环境、使用频率及维护保养情况等多种因素的影响。朗观视觉小编接下来带您扒一扒! 除尘雾炮机的寿命影响因素 设备质量:高质量的雾炮机采用优质材料和先进工艺制造&#xff…

自动化数据汇总:使用Python从多个数据源汇总数据

目录 引言 一、理论基础 1.1 数据源介绍 1.2 数据处理流程 1.3 常用库介绍 二、实践操作 2.1 数据读取 2.1.1 从CSV文件读取数据 2.1.2 从Excel文件读取数据 2.1.3 从数据库读取数据 2.2 数据处理 2.2.1 数据合并 2.3 数据汇总 2.4 数据存储 2.4.1 存储到CSV文件…

深度解析MFT损坏:原因、恢复策略与预防措施

一、MFT损坏现象揭秘 在Windows操作系统中,主文件表(Master File Table,简称MFT)是NTFS文件系统的核心组成部分,它记录了文件系统中所有文件的元数据,包括文件名、大小、创建和修改时间、数据位置等关键信…