华为10年经验测试工程师,整理出来的python自动化测试实战
前言
全书共分11章,第一章是基础,了selenium家谱,各种组件之间的关系以及一些必备知识。第二章告诉如何开始用python IDLE写程序以及自动化测试环境的搭建。第三章是webdriver API,我花了相当多时间对原先的文档,冗余的地方进行压缩,并且增加了许多新的知识点。第四、五两章介绍自动化测试模型,以及如何设计自动化测试用例。第六、七、八章的知识点关联性比较大,帮助读者搭建一个实例的测试结构,读者可以在此基础上扩展和优化。第九章介绍selenium grid如何多台平多浏览器的执行测试用例。第十章带领读者了解行为驱动开发框lettuce,第十一章通过git来管理自己的测试用例。
本书内容由浅入深,章节的安排也符合全读者的学习曲线,所有涉及到python语言的地方都有详细的介绍。这是一本自动化测试书,这也是一本python编程书。希望通过本书的学习,你不仅仅只是掌握一个自动化测试技术,使你的编程水平也有长足的进步,从此摆脱纯手工测试,向“测试开发”人员转型,向高薪挑战。
第一章 自动化测试基础
第一节 软件测试分类
软件测试分类:
- 根据项目流程阶段划分软件测试
- 单元测试
- 集成测试
- 系统测试
- 验收测试
- 白盒测试、黑盒测试、灰盒测试
- 功能测试与性能测试
- 时间性能
- 空间性能
- 手工测试与自动化测试
- 冒烟测试、回归测试、随机测试
- 探索性测试
- 安全测试
第二节 什么样的项目适合自动化测试
第三节 自动化测试及工具简述
第四节 selenium 工具介绍
第五节 前端技术介绍
第六节 前端工具介绍
第七节 自动化测试语言的选择
第二章 python webdriver 环境搭建
第一节 环境搭建
第二节 使用IDLD来编写python
第三节 第一个自动化脚本
第四节 安装浏览器驱动
第三章 python webdriver API
第一节 浏览器的操作
- 3.1.1、浏览器最大化.
- 3.1.2、设置浏览器宽、高
- 3.1.3、控制浏览器前进、后退
第二节 简单对象的定位
- 3.2.1 id 和name定位
- 3.2.2 tag name和class name定位
- 3.2.3 link text与partial link text定位
- 3.2.4 XPath 定位
- 3.2.5 CSS 定位
第三节 操作测试对象
- 3.3.1 登求买例
- 3.3.2 WebE1 ement接口常用方法
第四节 鼠标事件
第五节 键盘事件
第六节 打印信息
第七节 设置 等待时间
第八节 定位一组对象
第九节 层级定位
第十节 定位frame中的对象
第十一节 对话框处理
第十二节 浏览器多 窗口处理.
第十二节 alert/confirm/prompt处理.
第十三节 下拉框处理
第十四节 分页处理
第十五节 上传文件
第十六节 下载文件
第十七节 调用JavaScript
第十八节 控制浏览器滚动条.
第十九节 cookie处理
- 3.19.1打印cookie信息
- 3. 19.2、对cookie操
第二十节 获取对象 的属性
第二十一节 验证码问题
第二十二节 weddriver原理
第四章 自动化测试模型
第五章 自动化测试用例 设计
第六章 引入 unittest单元测试框架
第七章 引入测试报告 与结构优化
第八章 自动化测试高级应用
第九章 selenium grid2分布式执行测试用例
第十章 行为驱动开发 BDD框架lettuce入门
第十一章 gitlgetcafe 管理自动化测试项目
由于本书分的细节太多,小编就不一一打出来了,想要获取的小伙伴可以文末关注我的公众号【免费】获取哦~~~
相关文章:
华为10年经验测试工程师,整理出来的python自动化测试实战
前言 全书共分11章,第一章是基础,了selenium家谱,各种组件之间的关系以及一些必备知识。第二章告诉如何开始用python IDLE写程序以及自动化测试环境的搭建。第三章是webdriver API,我花了相当多时间对原先的文档,冗余…...
OpenCV杂谈 - 如何导出图像到内存中其他结构
前言 最近在net环境使用OpenCV,记录些疑难杂点. 一、OpenCV主要结构 Mat 二、Cols,Rows 和 Width,Hight 三、导入\导出到内存中其他结构 四、按矩形 在Mat之间复制 总结 一、OpenCV主要结构 Mat Mat是OpenCV中的主要结构. 主要有两个用途. 1 存储图片信息,2 存…...
Session与Cookie的区别(四)
咖啡寄杯的烦恼 虽然店里生意还可以,但小明无时无刻不想着怎么样发大财赚大钱,让店里的生意变得更好。 他观察到最近好多便利商店开始卖起了咖啡,而且时不时就买一送一或是第二件半价,并且贴心地提供了寄杯的服务。 寄杯就是指说你…...
Linux 文件锁 - fcntl
什么是文件锁? 即锁住文件,不让其他程序对文件做修改! 为什么要锁住文件? 案例,有两个程序,都对一个文件做写入操作。 #include <unistd.h> #include <stdio.h> #include <stdlib.h> …...
CellularAutomata元胞向量机-2-初等元胞自动机MATLAB代码分享
%% 二维元胞自动机%imagesc(a)的色度矩阵a中0->256由蓝变黄% 规则,先把中间点置为1,每一时间每一点如果%周围八个点和为偶数,则变为0,为奇数则变为 1% 颜色控制clc, clearMap [1 1 1; 0 0 0];% [0 0 0] is black, [1 1 1] is …...
OpenStack云平台搭建(6) | 部署Neutron
目录 1.在控制节点登录数据库配置 2.要创建服务证书,完成这些步骤 3.创建网络服务API端点: 4.安装网络组件 5.配置neutron组件 6.配置 Modular Layer 2 (ML2) 插件 7.配置Linuxbridge代理 8.配置DHCP代理 9.配置元数据代理 10.编辑/etc/nova/no…...
Lesson 05.Configuring the Oracle Network Environment
Lesson 05. Configuring the Oracle Network Environment 文章目录Lesson 05. Configuring the Oracle Network Environment1. 监听程序的配置文件有哪些,如何命名,保存在什么位置?2. Oracle 网络的服务名称文件是如何命名的,需要…...
理论五:接口vs抽象类的区别,如何用普通的类模拟抽象类和接口
在面向对象编程中,抽象类和接口是两个经常被用到的语法概念,是面向对象四大特性,以及很多设计模式、设计思想、设计原则编程实现的基础。比如,我们可以使用接口来实现面向对象的抽象特性、多态特性和基于接口而非实现的设计原则,使用抽象类来实现面向对象的继承特性和模板设计模…...
【Hello Linux】 Linux的权限以及Shell原理
作者:小萌新 专栏:Linux 作者简介:大二学生 希望能和大家一起进步! 本篇博客简介:介绍Linux的基础命令 Linux的权限以及Shell原理Shell的运行原理权限Linux中权限的概念如何切换用户如何提升当前操作的权限如何添加信任…...
【STM32】【HAL库】遥控关灯2 分机
相关连接 【STM32】【HAL库】遥控关灯0 概述 【STM32】【HAL库】遥控关灯1主机 【STM32】【HAL库】遥控关灯2 分机 【STM32】【HAL库】遥控关灯3 遥控器 需求 接收RF433和红外信号,根据信号内容控制舵机 硬件设计 主控采用stm32F103c6 STM32 433接收 其他接口 软件设计 接…...
代码随想录算法训练营第27天|● 93.复原IP地址 ● 78.子集 ● 90.子集II
93.复原IP地址 看完题后的思路 典型分割问题略lue略剪枝条件 sub: 1) 不是一位首字母为0 2)大于三位 3)介于0-255之间 4) 当已分割得到3个时,第四个直接从startIndex到末尾就行 代码 ArrayList<String> slist…...
Unity UI合批的问题
今天看到一个问题,主要说的是Unity中的UI资源合批的问题之前一直以为主要和UI资源在Hierarchy中的排列顺序有关,但其实这并不是最主要的,因为Unity会对同一个Canvas下的UI进行排序(注:不同Canvas下的资源是不能够合批的…...
MWORKS--系统建模与仿真
MWORKS--系统建模与仿真1 系统定义特征2 系统研究2.1 特点与原则2.2 方法百度百科归纳同元杠归纳3 系统建模与仿真3.1 系统、模型、仿真的关系3.2 系统建模4 建模方法4.1 方法4.2 一般流程4.3 目的5 仿真方法5.1 方法5.2 流程参考1 系统定义 系统是由相互作用相互依赖的若干组…...
PC端开发GUI
PC端开发GUI 一、搭建PC端环境:常规方式1、Python2、Pycharm二、搭建PC端环境:创建虚拟环境1、创建文件夹存放虚拟环境相关2、配置环境变量3、创建.ui文件4、.ui文件转成.py文件5、打包.py文件来发布.exe一、搭建PC端环境:常规方式 1、Python 注意Python版本不能超过3.9,…...
解读手机拍照的各个参数(拍照时,上面会有6个符号)
1第一个符号是闪光灯符号,如下图所示。有四种模式, 手机的闪光灯分别为关闭、自动、开启和常亮四种状态。 关闭:就是在任何情况下都不会闪光 自动:由手机来判断此时的光线强弱,若手机测光认为光线太弱,则…...
数字钥匙最新进展文章
在未来出行上,智能汽车越来越卷。 新车除了拼高精度激光雷达、堆大算力芯片、标配辅助驾驶、智能语音识别,还在车钥匙上展开了激烈角逐,越来越多的厂商开始在量产车型上搭载数字钥匙,实现无钥匙进入车内。 去年1月蔚来发布轿车E…...
如何在VMware虚拟机上安装运行Mac OS系统(详细图文教程)
一、安装前准备 虚拟机运行软件:VMware Workstation Pro,版本:16.0.0 。VMware Mac OS支持套件:Unlocker。Mac OS系统镜像。 如果VMware 在没有安装Unlocker的情况下启动,在选择客户机操作系统时没有支持Mac OS的选项…...
C++中的强制类型转换
接触过C语言的朋友都知道,C语言中也有强制类型转换,但是C语言中的强制类型转换会有一些问题,比如: int a 0x1234; char b (char)a; 上述的代码出现一个问题就是a 这个int型强制转化成b 这个char型时损失了一些精度,…...
任何人都可以学习Rasa之优秀Rasa学习资源推荐
任何人都可以学习Rasa之优秀Rasa学习资源推荐 欢迎同学们报名Gavin老师的Rasa系列课程,任何人都可以学习Rasa之优秀Rasa学习资源推荐: 1.NLP on Transformers高手之路137课 2 .Rasa 3.X 智能对话机器人案例开发硬核实战高手之路 (7大项目Ex…...
数据中心的 TCP-Delay ACK 与 RTO, RACK
TCP 对 RTO 有个最小值限制,一般限制为 MIN_RTO 200ms。之所以有这个限制,在于要适应 Delay ACK,而 Delay ACK 的意义,不多说,摘自 RFC1122: MIN_RTO 应该足够大,以覆盖 Delay ACK 的影响&…...
MySQL与常见面试题
目录 事务概述ACIDAUTOCOMMIT总结并发一致性问题丢失修改读脏数据不可重复读幻读原因和解决方法隔离级别未提交读(READ UNCOMMITTED)提交读(READ COMMITTED)可重复读(REPEATABLE READ)可串行化(SERIALIZABLE)加锁封锁粒度封锁类型读写锁意向锁...
FFmpeg进阶: 采用音频滤镜对音频进行转码
文章目录采样位数采样率声道布局码率使用FFmpeg音频滤镜进行转码参考链接很多时候为了让视频文件适应不同的播放领域,我们需要对音频文件进行转码操作,转码操作其实主要就是修改音频文件的各种参数包括:采样位数、采样率、音频布局、码率等等。下面分别介…...
C++:AVL树
AVL树的概念 二叉搜索树虽可以缩短查找的效率,但如果数据有序或接近有序二叉搜索树将退化为单支树,查找元素相当于在顺序表中搜索元素,效率低下,时间复杂度为O(N); 两位俄罗斯的数学家G.M.Ade…...
Docker中安装Oracle-12c
前言 MySQL和Oracle是开发中常用到的两个关系型数据库管理系统,接上一期内容,这一期在Docker中完成oracle-12c的安装和配置。 安装oracle-12c 1、拉取oracle-12c镜像 启动Docker Desktop后在cmd窗口中执行docker search oracle命令,搜索O…...
教你如何用Python分析出选注双色球号码
前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 数据集介绍 找从19年到现在的开奖历史数据,我们首先要把这个历史数据拿到, 拿到我们再进行做分析,分析每个号码出现的频率是多少, 哪个多&#x…...
elasticsearch映射及字段类型
查询映射关系类型上对字段的类型进行映射,我们前面知道可以通过get方法请求_mapping查询指定类型的映射关系:此语句可以查询get-together索引下的group类型的映射关系更新映射关系使用put方法可以更新类型的映射这里指定了new-events类型的字段映射关系&…...
1493围圈报数(队列)
题目描述 有n个人依次围成一圈,从第1个人开始报数,数到第m个人出列,然后从出列的下一个人开始报数,数到第m个人又出列,…,如此反复到所有的人全部出列为止。…...
【ArcGIS Pro二次开发】(2):创建一个Add-in项目
Add-In即模块加载项,是一种能够快速扩展桌面应用程序功能的全新扩展方式。 一、创建新项目 1、打开VS2002,选择创建新项目。 2、在搜索框中输入“arcgis pro”,在搜索结果中选择【ArcGIS Pro 模块加载项】创建项目,注意选择语言应…...
浏览器缓存是如何提升网站访问速度的
提升速度,降低负载 浏览器访问一个页面时,会请求加载HTML、CSS和JS等静态资源,并把这些内容渲染到屏幕上。 对浏览器来说,如果页面没有更新,每次都去请求服务器是没有必要的。所以,把下载的资源缓存起来&…...
Linux中几个在终端中有趣的命令
uhh…最近我不知道该更新些什么,所以就更新Linux几个很有趣的命令 文章目录前言1.命令:sl安装 sl输出2. 命令:telnet命令:fortune安装fortune4.命令:rev(反转)安装rev5. 命令:factor…...
做视频直播的网站/百度推广引流
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼写代码总是会出异常的,尤其是爬虫这类程序,无法确保每次请求都能稳定地返回统一的结果,比如反爬虫策略提升、代理IP超时、程序异常等等,处理好这些问题,才能保证爬虫程序持…...
政府网站建设的文件是什么/如何推广小程序
这个是最近配置的一个在5510上面配置的Easy,本来打算把实验环境也做上去,但是因为忙,就先把配置单写出来吧。//Isakmp policy crypto isakmp policy 10 authentication pre-share encryption 3des hash sha group 2 exit //nat-pool ip local pool easy*…...
做印刷的网站有哪些/抓关键词的方法10条
ubuntu环境:nginxrtmp下载安装搭建下载安装包nginxpcrezlibopensslnginx-rtmp-module安装nginx解压压缩包安装nginx测试nginx复制文件修改nginx的参数rtmp模块http模块下载安装包 nginx Nginx是一款轻量级服务器/反向代理服务器及电子邮件代理服务器,并…...
csprng wordpress/如何做互联网营销推广
中国超高分子量聚乙烯(UHMWPE)市场竞争状况与发展趋势分析报告2022-2028年 详情内容请咨询鸿晟信合研究院! 【全新修订】:2022年2月 【撰写单位】:鸿晟信合研究研究 2021年中国超高分子量聚乙烯(UHMWPE)市场销售收入达到了 万元,…...
常州外贸网站建设公司/百度手机关键词排名工具
这段时间一直在研究hdmi-servers,因为友善对这个在是闭源的,所以由于兴趣的关系和工作的关系,决定自己写一个hdmi-servers。 在hdmi中,最关键的是弄清楚了Hdmi显示数据的怎么来的,怎么输出的。 在s5pv210数据手册上,在…...
上海市城市建设工程学校网站/怎样免费给自己的公司做网站
241个jquery插件—jquery插件大全 免费JQuery插件 推荐12款非常有用的流行 jQuery 插件转载于:https://www.cnblogs.com/xiaomifeng/p/4686584.html...