首页 > 我的课程 > 功能的自动化测试(GUI、接口)

课程适合人群:

  • 软件自动化测试工程师
  • 本课程重点解答&解决:
  • 掌握单元测试框架
  • 学习自动化测试理念
  • 介绍自动化测试中的测试数据
  • 学习基于GUI的自动化测试技术——Selenium
  • 学习基于GUI的自动化测试技术——Cypress
  • 学习基于GUI的自动化测试技术——Playwright
  • 学习基于GUI的自动化测试高级技巧
  • 学习接口自动化测试
  • 本课程亮点+核心价值介绍:
  • 详细介绍单元测试框
  • 详细介绍自动化测试中的测试数据
  • 接口测试增加接口安全测试
  • 课长:
  •  7-9天
  •   
  • 大纲内容

    1单元测试框架
         1.1 unittest
              1.1.1 unittest自动化测试框架介绍
              1.1.2 以案例开始
              1.1.3 unittest的装饰器
              1.1.4 通过parameterized的参数化
              1.1.5 测试覆盖率分析工具
              1.1.6 断言
              1.1.7 批量运行并且产生报告
         1.2 pytest
              1.2.1 pytest概述
              1.2.2 pytest安装
              1.2.3 以案例开始
              1.2.4 pytest设计规则
              1.2.5 装饰器
              1.2.6 pytest 常用命令行选项
              1.2.7 pytest 运行并发测试
              1.2.8 pytest特有的参数化功能
              1.2.9 配合allure生成漂亮的pytest测试报
    2 软件测试自动化测试方法
         2.1测试自动化的内涵
         2.2测试自动化的基本结构
         2.3测试自动化的原理和方法
         2.4基于脚本的自动化测试
         2.5自动化测试流程
         2.6测试自动化普遍存在的问题
    3 软件测试自动化测试实践
         3.1什么类型的功能测试应该采用自动化方法
         3.2如何处理复杂业务流程的自动化测试
         3.4如何准备自动化功能测试数据
         3.4什么原因导致无法识别对象
         3.5如何在运行过程中防止程序中断
         3.6自动测试的选择(案例讨论)
         3.7自动化测试的持续集成对软件测试的重大价值
         3.8自动化测试与回归测试的集成对软件测试的重大价值
    4 自动化测试工具的分类和选择
         4.1测试工具的分类和选择
         4.2测试工具的主流产品介绍
         4.3自动测试的选择
         4.4自动化工具原理
         4.5存在的问题分析
    5 自动化测试和软件质量分析报告
         5.1软件产品的质量度量
         5.2评估系统自动化测试的覆盖程度
         5.3自动化测试缺陷分析方法
    6自动化测试数据准备
         6.1测试数据的创建方法
         6.2测试数据的创建时机
         6.3从测试数据1.0到3.0
    7 自动化功能测试工具: Selenium/WebDriver的使用
         7.1 Selenium原理
              7.1.1 基本原理
              7.1.2 环境配置
              7.1.3 驱动器版本
         7.2自动化功能测试工具: Selenium/WebDriver的使用
              7.2.1 使用浏览器
              7.2.2获取控件
                   By.ID
                   By.NAME
                   By.CLASS_NAME
                   By.TAG_NAME
                   By.LINK_TEXT
                   By.PARTIAL_LINK_TEXT
                   By.CSS_SELECTOR
                   By.XPATH
                   定位一组元素
              7.2.3 操作
                   浏览器操作
                   基本操作
                   鼠标事件
                   等待
                       显示等待
                       隐私等待
                       强制等待
                   多表单切换
                   多窗口切换
                   下拉条(Select)操作
                   单选框(Radio)操作
                   复选框(Checkbox)操作
                   警告框处理
                   cookie操作
                   调用HTM5 Video
                   截图
                   数据驱动
              7.2.4 Selenium Grid
                   基本Grid
                   在Docker下运行Grid
              7.2.5程序封装优化
                   异常优化
                   Retry优化
              7.2.6 POM介绍
              7.2.7 selenium封装技巧
    8 Cypress
         8.1安装
         8.2 第一个代码
         8.3定位元素
              8.3.1为Cypress专门提供data-*属性
              8.3.2基本元素定位
                   Cypress默认使用CSS Selector元素定位
                   通过CSS Selector元素定位
                   使用cypress.$(selector) 元素定位
              8.3.3辅助元素定位
                   HTML代码
                   find()
                   get()
                   contain()
                   children()
                   parents()
                   parent()
                   siblings()
                   first()
                   last()
                   next()
                   nextAll()
                   nextUtil()
                   prev()
                   nextUtil()
                   prevAll()
                   nextUtil()
         8.4操作元素
              8.4.2访问网站
              8.4.3刷新页面
              8.4.4强制刷新页面
              8.4.5设置窗口大小
              8.4.6前进、后退
              8.4.7判断元素是否可见
              8.4.8判断元素是否存在
              8.4.9判断元素是否不存在
              8.4.10条件判断
              8.4.11获取元素属性
              8.4.12点击元素
              8.4.13双击元素
              8.4.14右击元素
              8.4.15提交表单
              8.4.16往输入框输入文本元素
              8.4.17聚焦元素
              8.4.18失去焦点
              8.4.19清空元素
              8.4.20检查多选或者单选框被选中
              8.4.21检查多选或者单选框未被选中
              8.4.22在检查之前忽略错误检查
              8.4.23 select 选项框
              8.4.24滑内嵌滚动条滑动
              8.4.25浏览器自带的滚动条
              8.4.26在元素上触发事件
         8.5钩子函数(Hook)
         8.6等待
         8.7断言
              8.7.1隐式断言
                   should()
                   and()
              8.7.2显示断言
                   expect()
                   assert()
         8.8iframe切换与Windows切换
              8.8.1 iframe切换
              8.8.2 Windows切换
         8.9参数化
              8.9.1变量参数化测试
              8.9.2使用fixture测试外部数据
              8.9.3使用外部json文件进行测试
              8.9.4优化
         8.10 POM(Page Object Method)
              8.10.1定义页面文件
                   登录页面文件
                   商品页面文件
              8.10.2主文件
         8.11 命令行运行测试
              8.11.1运行
              8.11.2 cypress open
              8.11.3 cypress run
              8.11.4 cypress verify
              8.11.5 cypress version
         8.12 cypress支持Allure
         8.13 cypress 与Jenkins集成
    9 Playwright
         9.1 Playwright介绍
         9.2安装
         9.3 Playwright命令
         9.4录制
              9.4.1开始录制
              9.4.2异步代码与同步代码
              9.4.3录制脚本进行优化
         9.5设置
              9.5.1忽略HTTPS错误
              9.5.2设置自定义视口大小
                   在conftest.py中配置
                   在测试用例中配置
              9.5.3模拟手机浏览器
         9.6 定位元素
              9.6.1定位函数
                   page.get_by_role()
                   page.locator()
                   page.get_by_text()
                   page.get_by_label()
                   page.get_by_placeholder()
                   page.get_by_alt_text()
                   page.get_by_title()
                   page.get_by_test_id()
              9.6.2 CSS与xpath
                   CSS
                   xpath
              9.6.3 playwright定位类型
                   xpath
                   css
                   text
         9.7操作
              9.7.1基本操作
                   跳转到一个新的链接
                   获取元素焦点
                   输入文本
                   设置复选框取消或选中
                   取消已选中复选框取
                   获取元素属性值
                   获取内部文本
                   获取内部HTML
                   获取文本内容
                   设置select下拉选项
                   调度事件
                   >>组合表达式
                   执行JavaScript语句
              9.7.2 鼠标操作
                   元素定位
                   获取元素位置及大小
                   鼠标移动
                   按下鼠标
                   释放鼠标
                   鼠标双击
                   鼠标悬停
                   鼠标点击
                   案例
              9.7.3 键盘操作
                   模拟键盘输入字符操作
                   单元素键盘事件操作
                   上传文件
                   聚焦元素
                   拖拽操作
              9.7.4 等待
                   等待事件触发
                   等待JavaScript函数触发
                   等待事件被触发
                   自动等待
                   强制等待
              9.7.5其他操作
                   iframe操作
                   窗口切换
                   操作video
                   降低执行速度
                   快速截图
                   复用 Cookies 等认证信息
                   监听事件
                   拦截更改网络请求
                   灵活设置代理
              9.7.6 批量执行
         9.8 断言
              9.8.1断言内容
                   页面URL断言
                   页面Title断言
                   获取文本内容断言
                   获取内部文字断言
                   获取属性值断言
                   复选框断言
                   JavaScript表达式断言
                   内部HTML断言
                   元素可见断言
                   启动状态断言
                   直接对比断言
                   自定义断言
              9.8.2对象断言
                   page属性
                   element属性
                   locator属性
              9.8.3 from playwright.sync_api import expect 断言
         9.9 与pytest结合
              9.9.1 安装
              9.9.2 代码
              9.9.3参数介绍
                   运行测试
                   开启页面运行
                   指定浏览器运行
                   开启页面运行并指定浏览器运行
                   指定两个浏览器运行
                   用慢动作运行测试
                   开启记录每次测试的轨迹
                   开启每次测试录制视频
                   开启每次测试后是否自动截屏
              9.9.4通过浏览器跳过测试
              9.9.5在特定浏览器上运行
         9.10 POM & FOM
              9.10.1 POM
                   登录
                   查看商品
                   放入购物车
              9.10.2 FOM
                   保留文件
                   添加flowObject.py
                   改写TestEbusiness.py
         9.11数据驱动
              9.11.1通过mark.parametrize参数化
              9.11.2 通过fixtures参数化
              9.11.3 yarm格式文件
                   相关插件
                   yarm文件
                   代码
              9.11.4 Excel格式文件
                   相关插件
                   Excel
                   代码
              9.11.5 CSV格式文件
                   相关插件
                   CSV文件
                   代码
              9.11.6 json格式文件
                   相关插件
                   json文件
                   代码
              9.11.7 XML格式文件
                   相关插件
                   XML文件
                   代码
         9.12 生成Allure报告
              9.12.1改写pageObject.py
              9.12.2 改写flowObject.py
              9.12.3 改写TestEbusiness.py
              9.12.4 查看报告
         9.13与Jenkins集成
         9.14Playwright封装技巧
    10 基于GUI自动化测试高级技术
         10.1 GUI自动化测试程序的自愈
              10.1.1 Healenium
                   配置
                   Java
                   Python
              10.1.2 ReCheck
         10.2 保存cookies文件,测试登录后的功能
         10.3 利用Applitools Eyes识别视觉bug
         10.4 利用yaml文件分离测试环境、测试数据和测试行为
    11 接口自动化测试
         11.1 Requests类介绍
         11.2 基于requests类的Python接口自动化测试
              11.2.1原始阶段
              11.2.2对CSRF的校验
              11.2.3使用excel作为数据驱动
              11.2.4数据驱动优化
              11.2.5相对复杂的接口测试
         11.3 Cypress接口测试
              11.3.1 cy.request参数
              11.3.2 Get方法
              11.3.3 Post方法
              11.3.4 案例
                   Get接口测试案例
                   Post接口测试案例
         11.4接口性能测试
         11.5接口安全测试
      

    软件测试咨询

      

               

    投稿关闭窗口打印