Selenium之自动化常遇问题

1.等待方式的选择web

你们都知道Selenium中等待方式有三种,当在页面没有找到定位的元素抛出异常,那么加个等待,还有问题就换个等待方式数据库

  • 强制等待 time.sleep(10)
  • 显式等待 driver.implicitly_wait(10)
  • 隐式等待 WebDriverWait(driver, 10).until(EC.presence_of_element_located(locator))

2.网页的加载顺序:app

  • 元素或控件(a标签 input) 
  • 标签中的数据
  • 文件、图片 

因此有时使用wait.until(EC.presence_of_element_located((By.ID, 'kw'))).click()会提示未定位到元素,是由于元素的出现不意味着元素可点击,所以将presence_of_element_located换成visibility_of_element_located框架

3.找元素出现问题,没有找到或超时:测试

  • 没有加等待
  • 等待时间不够
  • 定位表达式有问题
  • 显示等待的条件不对

 4.前置条件的知足(不是每一步都要经过web自动化测试实现):接口

  • 自动化脚本
  • 接口
  • 修改数据库
  • 手动充值

5.basepage还有哪些方法须要封装?图片

原则:不以你测试的页面改变,不管哪一个页面均可以用到ci

6.web分层:element

  • PO,将页面逻辑和测试逻辑分离
  • 元素定位层 locator,单独成类,也能够写到类属性中(建议)
  • 数据层==>数据分组==>rf,关键字驱动
  • 用例层
  • basepage==>决定了框架的好坏,通用逻辑
  • webelement 元素层(app自动化测试学)

 7.前置条件的知足(均可以,不是每一步都要经过web自动化测试实现):input

  • 自动化脚本
  • 接口
  • 修改数据库
  • 手动充值   
相关文章
相关标签/搜索