5.EC、POM模式

selenium_day_5

0.EC模块presence_of_element_located(locator)

  • locator: 定位器
    • 数据类型,元组
    • ("元素定位方式","对应的定位方式值")
      • 元素的定位方式: 8种
        • "id","class name","partial link text"
      • 对应的定位方式值:
        • id属性值
        • xpath/css表达式
    • WebDriverWait(driver, 10).until(EC.presence_of_element_located(locator)) # 元素定位--单个元素
    • WebDriverWait(driver, 10).until(EC.presence_of_all_elements_located(locator)) # 元素定位--单个元素

1.自动化测试用例编写原则

  • 一个脚本就是一个完整的场景
  • 一个脚本只验证一个功能点
  • 脚本尽量只做正向逻辑验证
    • 正向逻辑≠正确数据
  • 脚本之间不要产生关联,每个脚本都可以独立运行
  • 脚本只对验证点进行验证,不对脚本中每一步骤做验证

2.POM模式

2.1什么是POM模式

pom模式是页面自动化的一个常用的模式;Page Object Module页面 对象 模型

2.2 POM总体思路

一切皆对象

  • 把项目中的每一个页面当做一个对象
  • 把每个页面分为三层
    • 表现层
      • 页面上可见的所有元素
    • 操作层
      • 对页面上所有可见元素的操作(点击,清空,输入)
    • 业务层
      • 对元素操作后所实现的功能

2.3 POM框架文件结构

  • 项目名称
    • common文件夹 --存放公共方法
      • base.py --对selenium做二次封装(基础类)
        • 方法名称一定--见名知意,注释不能缺失
        • 打开浏览器
        • 打开网址
        • 元素定位(单个/一组)
        • 元素操作(点击/输入)
        • 关闭浏览器
        • 下拉菜单
        • alert弹窗
        • iframe
      • 工具类
        • operation_excel.py
        • xxxx.py
    • page文件夹 --一个页面就是一个.py文件
      • 封装页面的表现层和操作层---继承base.py
      • login_page.py # 登录页面
      • register_page.py # 注册页面
    • script文件夹 -- 测试用例
      • 封装页面的业务层(测试用例)
      • 测试用例调用page文件夹中的类
    • data存放测试数据
    • report存放测试报告

3.selenium ide(了解)

  • 下载
    • 下载 火狐浏览器的一个插件
    • 菜单---->附加组件---->搜索selenium ide---->选第一个下载
  • 录制
    • 打开selenium ide
      • 创建新项目
      • 打开已有项目
      • 关闭selenium
      • 记录并创建新项目
    • 在地址栏中输入被测网址
    • 点击REC---REC图标为红色
    • 操作被测网址
    • 点击停止记录Pause
    • 保存
  • 回放
    • 点击运行当前测试用例/运行所有测试用例
    • 将时间调到最慢
  • 导出代码
    • 在测试用例上右键---->选择Export
    • 选择语言---Python

你可能感兴趣的:(5.EC、POM模式)