python测试开发技术栈
2021-12-15 15:26:25 84 举报
AI智能生成
Python测试开发技术栈主要包括:unittest、pytest、allure-pytest等。unittest是Python自带的标准库,用于编写和执行测试用例;pytest是一个第三方库,功能强大且易于使用,支持参数化测试、fixture等功能;allure-pytest是一个基于pytest的插件,可以生成美观的测试报告。此外,还可以结合selenium、appium等自动化测试框架进行Web或移动端应用的自动化测试。在实际项目中,根据需求选择合适的工具和技术栈,以提高测试效率和质量。
作者其他创作
大纲/内容
Python编程与测试开发技术
python环境搭建
python起源
发展与特点
解释器安装与环境配置
pycharm安装与配置
我的第一个python程序
python程序多方式运行
python语法规则
python语法规则
python变量的定义
变量的声明与使用
python的输入与输出
python的格式化输出处理
python的字符集处理
python数据类型
python的基本数据类型大全
python中的运算符规则
python中的类型转换详解
字符串类型操作
字符串在计算机中的定义
关于字符串的常见操作
面试必考的字符串使用场景案例
列表类型操作
列表的定义
列表常见操作
列表的元素添加
列表的元素值修改
列表的元素删除
列表常用方法详解
大厂必问: 列表的拷贝方法
面试必考:列表的反转
元组类型操作
元组的定义与使用
元组的那些必学特性
元组的常用方法详解
字典类型操作
字典的定义与操作
字典常见操作
字典元素添加
字典元素值修改
字典元素删除
字典常用方法详解
字典的items操作
字典的values操作
集合类型操作
集合的定义与使用
集合的特性
集合常用方法讲解
集合的使用场景分析
流程控制--条件判断
单向分支实战讲解
双向分支实战讲解
拓展:实战中的多项分支与巢状分支判断学习
实战:布尔表达式的实战应用
实战:条件判断的使用场景分析
流程控制--循环处理
while循环讲解
for循环详解
for..range的使用
拓展:break/continue关键字的使用场景
实战:真实环境中的for循环使用案例
面向对象--函数
函数的定义与调用
函数的返回值
函数中的参数详解
缺省参数
可边长度参数
开发中的内置函数
函数的嵌套使用
实战:关键字函数封装案例讲解
模块与包
模块化与包的定义与使用
内置模块详解
内置time模块的使用
内置datetime模块使用
内置calendar模块使用
实战:自定义模块的使用场景分析
文件操作
文件对象在python中的定义
用python去电脑中读取文件
python向文件记录内容的方法
with..as用法
实战:文件使用场景案例详解
python项目开发实战篇
Excel操作实战
python Excel操作技术
openpyxl详解
xlrd解析
xlwt实战应用
yaml操作实战
yaml文件语法规则
yaml文件读写操作
yaml使用场景与案例解析
大厂必问:面向对象基础
面向对象思想分析
通过构造函数定义类和对象
类属性详解
类属性
实例属性
类的方法详解
实例方法
静态方法
类方法
大厂进阶:面向对象高阶
面向对象中的封装思想
面向对象中的继承思想
面向对象中的多态思想
装饰器的使用
匿名函数
匿名函数的定义与使用
匿名函数与内置函数结合使用
匿名函数的使用场景
装饰器
函数与装饰器的关系
装饰器的原理与用途
实现带参数的装饰器
实战:装饰器常见问题分析
学会用python操作系统日志
logging日志模块的基本使用
日志级别讲解
日志流的使用
日志的封装
实战:日志的调用与使用场景分析
python的异常处理方法
异常的产生、捕获、处理操作
异常的多种处理机制
raise用法
实战:异常的使用场景分析
python的邮件处理机制
zmail简介&安装
zmail发送邮件
文本正文
HTML正文
带附件
邮件封装与使用场景实战
实战:smtplib邮件的处理(构建MIMEText,MIMEMultipart等)
mysql数据库操作
PyMySql连接Mysql数据库
Python对MySQL数据库实现增删改查
跳板机连接数据库
实战:Python操作数据库的封装与综合管理项目中运用(断言操作)
web自动化测试基础
自动化测试流程概述
自动化测试的定义和目的
自动化测试的优势
自动化测试的流程
自动化测试的技能要求
Web自动化主流工具的介绍
selenium环境搭建
selenium发展与特点
selenium安装与环境配置
Selenium实现自动化测试原理剖析
常规页面元素定位方式
通过id/name/class/tag/link_text等方式定位元素
各种元素定位特点的分析
xpath元素定位方式详解
xpath定位元素技巧
xpath表达式编写方式
css元素定位方式详解
css定位元素技巧
css多属性高级定位方式
元素组定位
元素组的定位方式
元素组定位的使用场景;
find_element()/find_elements()定位方式的解析与对比
特殊元素定位
单选框、多选框、复选框、下拉框选择
动态元素的定位技巧阐述
浏览器操作
获取页面title/url、页面的前进后退
页面的刷新、截屏、页面关闭与进程的关闭
元素常用属性与方法(text,get_attribute())
三种等待时间详解
强制等待time、隐式等待、显式等待的使用
三者的区别与实际场景应用
切换操作技巧
浏览器模式切换(无头模式、APP模式)
多窗口的切换
多Frame的切换
弹框的切换与操作
鼠标、键盘操作技巧
鼠标事件(移动,双击、移动、拖拽)
鼠标操作实战,键盘事件与实战操作
JavaScript在自动化测试中的应用
JavaScript Excutor执行器语法规则
js更改元素属性
js定位元素
js操作滚动条等各种场景应用
Web自动化项目实战
WebUI自动化用例编写
大型电商项目自动化用例编写
自动化编写技巧
unittest自动化框架及结合自动化测试用例
unittest组织测试用例的原理
unittest语法详解
unittest批量运行用例
用例的前置后置操作,跳过运行
自动化用例断言
unittest常用的断言方法
如何校验用例的完整性
自动化测试之POM模型
POM的意义与原理
POM页面对象模型
数据驱动
DDT实现自动化测试数据驱动
yaml文件驱动
分布式测试
selenium分布式原理
分布式环境搭建
大规模自动化测试
APP自动化测试基础
自动化框架与工具使用
初探APP自动化框架(APPium,UIautomator,Espresso等)
APPiumDesktop的介绍与使用
Inspector工具配置与使用
ADB命令操作
ADB原理
设备连接
上传下载文件
安装卸载APP
日志获取
input输入类命令
查看系统信息
获取包名和事件入口
Monkey稳定性测试
Monkey稳定性测试原理
Monkey指令详解(基础参数、事件参数、调试选项)
Monkey日志分析(日志定位,回归验证)
自动化配置项
Desired Capabilities配置文档
常见配置项介绍和使用场景分析
APP界面元素查看工具
UIAutomatorViewer获取元素信息
Inspector工具获取元素信息
Inspector进行自动化脚本录制操作
APP元素定位
元素定位方式详解(id,classname,accessibilityID,xpath等方式的使用)
元素组定位方式
APP元素操作
元素属性操作(text,location,size等)
常用API函数(launch_APP,reset,is_APP_installed等)
点击、滑动、输入字符、点击坐标等操作技巧
APP自动化项目实战
微信小程序自动化操作
APPium手势连续性操作(TouchAction,MultiTouchAction)
APPium键盘事件
切换操作
小程序自动化原理
Webview元素定位、小程序自动化实现
H5、Webview自动化
H5的概念
H5与原生页面的对比
H5测试技术详解
Webview元素定位,自动化实现
UIautomator2测试框架
UIautomator2测试框架介绍
UIautomator2测试框架环境搭建
常用关键字封装、滑动、APP点击
安卓集群服务搭建
集群环境搭建
批量管理测试真机
Pytest测试框架+分布式运行脚本
Pytest测试框架实现分布式运行,脚本在多台机器运行
APP自动化测试,多机器运行
接口自动化测试基础
接口自动化测试概述
接口测试的定义与意义
接口测试的实现方式
接口自动化的实现流程
HTTP协议
通信协议原理解析
HTTP与HTTP协议详解(请求,响应,请求方法,状态码)
session、cookie、token鉴权
JSON数据格式详解
JSON与XML的比较
JSON的语法规则
JSON的数据类型介绍
JSON的练习
Requests模块基础
Requests安装
使用Requests发送请求(get,post,delete,put,Requests)
不同格式解析响应数据(text,json,content)
Requests之session模块
session模块应用、接口请求、会话管理
Requests请求HTTP接口实战
GET、POST、DELETE、文件上传
接口类型、json、from-data、参数类型、
场景实战演练
接口自动化实战
HTTP接口项目实战之论坛接口
项目接口文档分析
接口测试用例编写规范
HTTP接口自动化测试实战
Requests进行接口自动化测试实战
封装HTTP请求类
unittest组织测试用例
Mock server
Mock serve应用场景,实现原理
基于Flask实现Mock server
Flask项目搭建
开发get、post、delete、form-data的mock方式
文件上传接口、auth认证
WebSockt协议接口
WebSockt协议接口原理
搭建WebSockt测试环境
WebSockt接口测试实战
Jmeter测试WebSockt协议接口
Python测试WebSockt接口
基于RPC协议之Dubbo接口测试
Dubbo接口测试原理
Dubbo基础架构解析
Dubbo接口测试实战
telent测试Dubbo接口
Jmeter测试Dubbo
Python进行Dubbo接口测试
实战:自动化测试框架实战开发
Pytest
Pytest介绍,环境搭建
Pytest环境搭建
Pytest常用插件安装
Pytest基础语法
Pytest基础语法规则详解
Fixture的使用
Pytest参数化与Fixture的使用
Allure测试报告
Pytest之conftest使用
集成Allure测试报告
框架搭建原理、思路
搭建框架之前的准备
框架的意义、设计思路、代码模块分层思想
UI自动化测试框架搭建一
代码模块分成
搭建日志系统
搭建断言系统、报告系统
UI自动化测试框架搭建二
关键字驱动设计、数据驱动设计
接口自动测试框架搭建一
HTTP、Websocket、Dubbo类型接口模块类封装
接口自动化测试框架搭建二
关键字驱动设计、数据驱动设计、数据库应用、日志、断言系统
UI测试框架和接口测试框架一体化
接口测试框架与UI测试框架整合,前后端自动化测试关联场景运用
HTML前端
HTML元素,标签、css、Javascript语法基础
Flask后端api编写
Restful API开发规范,构建一套API服务
性能测试
APP性能测试
性能测试入门
性能测试环境搭建与性能指标阐述
性能指标(cpu、内存、流畅度等)
性能测试工具选择
环境搭建
性能指标之启动时间、CPU、流量详解及实战
性能指标(启动时间、CPU、流量详解)获取方法;监控脚本实现;数据分析
性能指标之电量、内存、FPS&过度渲染及实战
性能指标(电量、内存、FPS&过度渲染)获取方法;监控脚本实现;数据分析
Jmeter性能测试
性能测试入门
性能测试概念目的与意义
性能测试策略详解
性能测试流程和性能测试工具分析
性能测试环境搭建与性能指标阐述
性能指标(TPS/并发用户数/响应时间/吞吐率/资源利用率)
性能测试工具选择
Jmeter环境搭建
Jmeter接口测试及HTTP协议讲解
Jmeter设置测试计划
Jmeter线程组
JmeterHTTP请求
fiddler抓包
Jmeter接口测试参数化及录制HTTP脚本
Jmeter设置参数化
文件参数化
数据函数参数化
Jmeter监控服务器资源设置
Jmeter录制HTTP脚本
Java请求&JDBC请求实战
Java请求,计算器,固定定时器,集合点设置
JDBC协议使用及技巧
Jmeter插件管理及jvm监控
Jmeter插件管理,场景设置,tps图
Jmeter启动内存设置及字体
jvm监控Jmeter
Jmeter集群压测及结果分析
Jmeter集群压测设置
Jmeter结果统计及分析
Jmeter项目实战
单机、分布式、多线程执行机制、混合负载、压力测试
稳定性测试
可扩展性、可恢复性测试等其它场景测试
Liunx服务器监控
Linux环境命令动态监控,top/free/vmstat等
数据库监控
数据库监控,慢查询sql定位
JVM监控
JVM监控
JProfiler工具使用,类耗时间
jvm命令监控jmap,jstat,jstack
服务器资源监控与分析
监控堆栈内存使用,线程抓取
全链路压测
全链路压测,集群压测原理解析
性能测试分析与总结
性能瓶颈分析,测试报告编写,性能测试流程总结
安全测试
安全测试概述与工具使用
XSS漏洞
XSS漏洞简介
XSS漏洞分类
XSS漏洞原理
XSS漏洞防范
CSRF漏洞
CSRF的分类
CSRF 跨站请求伪造
常见CSRF攻击场景
CSRF攻击防御策略
越权访问
越权概念
越权的原理
越权漏洞实例
防范措施
SQL注入
SQL注入原理
SQL注入步骤
SQL注入实战
如何防御SQL注入
短信/邮件炸弹
短信、邮件炸弹概念
短信、邮件炸弹实例及防御策略
文件上传
文件上传简介及流程
文件上传漏洞方法
安全防御策略
跳转漏洞
跳转漏洞概述
跳转漏洞危害及方式
跳转漏洞防御策略
SSRF漏洞
SSRF漏洞简介及目的
利用SSRF的目的
SSRF漏洞用途及特性
如何挖掘SSRF漏洞
常见SSRF攻击场景
防护SSRF措施
命令注入
命令注入简介
命令注入原理
漏洞利用
漏洞防范
信息校验
用户权限测试
url安全测试
表单提交安全测试
路径遍历
session安全测试、数据验证
CI/CD持续集成
Jenkins介绍、环境搭建
部署Jenkins环境
常用Jenkins插件安装
构建自动化测试任务
自动化测试用例结合Jenkins构建任务应用
自动化测试用例结合Jenkins定时运行
自动化测试用例结合Jenkins批量运行
自动发送邮件测试报告
定时任务执行后产出测试报告
根据用例通过率自动发送邮件
git仓库的使用
git版本库创建
添加远程仓库
克隆、pull、push、commit命令使用
Docker容器技术
Docker使用原理
Docker环境搭建
Docker在自动化测试中场景应用
流水线
构建 CI/CD 流水线流程
操作系统
计算机系统
计算机系统简介/特点
计算机系统的组成
计算机系统的分类
进程和线程详解
进程和线程概念以及多进程和多线程
进程和线程的关系
进程和线程的区别
进程和线程的状态
进程死锁的危害、出现原因、解决方法
进程间通信机制
通信机制的概述
常见的通信机制
通信机制详解(管道、无名管道、命名管道、消息队列、共享内存、信号量)
Linux系统操作
Linux环境搭建
虚拟机VMware Workstation Pro安装
SUSE Linux环境搭建
VMware Tools辅助工具安装
Windows_Linux系统之间文件共享
Linux初级命令学习
Linux概述、起源、架构
Linux目录系统讲解
初级Linux命令学习
目录操作命令(ll/cd/mkdir/rmdir)
文件操作命令(touch/cp/mv)
文件查看命令(cat/more/head)
Linux中级命令学习
常用中级命令学习
编辑器命令(vim)
链接文件命令(ln)
文件搜索命令(find/which/whereis/grep)
系统资源命令(df/free/ps)
其他系统命令(halt/poweroff/shutdown)
Linux高级命令学习1
打包压缩命令(tar)
用户和组命令(useradd,groupadd)
Linux高级命令学习2
权限的理解
权限命令(chmod/chown)
权限的更改-所属者
权限的更改-所在组
给用户设置指定的权限
Linux下Web环境部署1-tomcat+jdk
Linux下安装与配置jdk
Linux下编译和运行Java代码
Linux下安装tomcat
Linux下访问tomcat
Linux下Web环境部署2-MySQL数据库
Linux下安装和配置MySQL数据库
Linux下登录和使用数据库
Linux下修改root用户密码
Windows下的Navicat连接Linux的MySQL服务端
Linux服务器访问操作
Xshell/Xftp的安装与介绍
使用Xshell/Xftp操作服务器端的文件
拓展:Postman测试工具专题
Postman安装与使用
Postman简介
Postman环境搭建
Postman接口测试-get请求
Postman接口测试-post请求(各种类型参数案例)
Postman集合测试
Postman测试集管理接口
测试集的导入导出
测试集中设置变量
引用变量
Postman接口关联
Postman全局变量设置与应用
环境变量设置与应用
在Tests中设置变量、获取变量
Postman断言
postman状态码d断言
postman响应正文
postman响应时间
Postman参数化
Postman各种参数化方式(文本参数化、csv参数化、json参数化)
Postman数据驱动
测试集、关联、参数化、断言的综合使用
收藏
0 条评论
下一页