zoukankan      html  css  js  c++  java
  • Python自动化测试面试题-Selenium篇

    目录

    基础

    Selenium中有几种等待

    • 隐形等待/智能等待 dr.implicitly_wait()
    • 显性等待 WebDriverWait
    • 强制等待 time.sleep()

    Selenium中有哪些定位方式

    8种

    • tag
    • 三大基本属性 id/name/class_name
    • 链接 link text/partial link text
    • 高级 css selector/xpath

    弹框怎么处理

    4种弹框

    • div弹框、dom弹框,遮罩框 直接定位
    • alert框 dr.swich_to.alert().dismiss()
    • 弹出新窗口 不用处理/也可以切换到新窗口,然后关闭
    • BasicAuth授权框 dr.get(http://用户名:密码@www..)

    框架页面怎么处理 切换框架

    上传下载怎么测试

    • 上传 <input type="file" style=“display: none"> send_keys()
    • 下载 点击
    • flash/ 非标控件 桌面自动脚本生成exe

    不确定时间的控件变化如何测试

    webdriver wait

    怎么对一个元素进行截图

    elm.save_snapshot()

    定位不到元素如何处理

    • sleep
    • 观察页面 页面有有没有跳转,元素有没有出现,有没有弹出alert
    • 元素是否在框架里
    • 元素是否在新页面里

    如何应对页面元素变动问题

    使用PageObject

    Selenium的遇到flash怎么解决

    使用pywinauto或其他GUI自动化工具生成exe,配合Selenium执行。

    如何去定位页面上动态加载的元素?

    • 通过正常的业务流程触发元素加载,稍微等待后操作
    • 直接执行JavaScript脚本使元素加载,进行操作

    如何去定位属性动态变化的元素

    使用其他不变的属性定位。

    Webdriver可以用来做接口测试吗

    不能

    Selenium是否支持C/S模式

    Selenium是一套浏览器自动化测试框架,支持B/S模式的应用,C/S模式仅支持部分已浏览器为核心的应用,一般情况下不支持C/S模式。

    如何处理验证码

    • 绕过
    • 临时关闭
    • 万能码
    • 从数据库或日志中取
    • 发接口登录绕过
    • 半自动手动输入
    • 图像识别
    • AI深度学习
    • 花钱打码

    框架封装

    UI框架如何分层

    你的框架是如何设计的

    • 执行控制
    • 测试套件
    • 用例
    • 业务流 页面对象组合,常用的业务流程
    • PageObject 页面对象、页面基础类
    • 实用方法 数据读取 数据库操作 日志 发邮件 自己封装的定位方法

    框架是怎么选择组合搭建的

    • 基础引擎 unittest、pytest、robot、httprunner、自己写
    • 数据选择 json/yaml、csv/excel、数据库、conf
    • 配置文件 conf/ini py xml

    登出了怎么处理?

    • 增加登录的频次
    • 执行用例前,验证状态
    • 失败重试,加上登录

    测试用例之间具有依赖处理

    • 不建议有依赖
    • 确保执行顺序
    • 并发时以用例类suite为单位运行

    webdriver异常怎么处理,怎么恢复场景和记录结果

    • 截图
    • 记录日志,和当时的环境信息
    • 使用subprocess运行,并记录子进程退出code
    • 缓存上次执行结果

    垃圾数据怎么处理

    • 测试环境 执行sql
    • 生产环境 请求接口或执行UI步骤
  • 相关阅读:
    Gson简要使用笔记
    android入门到熟练(五)---广播
    95&&96.Unique Binary Search Trees I&&II
    day 08 文件操作
    07 深浅拷贝
    06 day小数据池
    05,.字典,集合
    列表和元组
    字符串
    while 循环,格式化输出和运算编码
  • 原文地址:https://www.cnblogs.com/superhin/p/12616263.html
Copyright © 2011-2022 走看看