Python自动化测试面试题-Selenium篇 | 当前位置: 首页> 学习中心> 小白入门> 详情 |
● 隐形等待/智能等待 dr.implicitly_wait()
● 显性等待 WebDriverWait
● 强制等待 time.sleep()
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
使用pywinauto或其他GUI自动化工具生成exe,配合Selenium执行。
● 通过正常的业务流程触发元素加载,稍微等待后操作
● 直接执行JavaScript脚本使元素加载,进行操作
使用其他不变的属性定位。
不能
Selenium是一套浏览器自动化测试框架,支持B/S模式的应用,C/S模式仅支持部分已浏览器为核心的应用,一般情况下不支持C/S模式。
● 绕过
● 临时关闭
● 万能码
● 从数据库或日志中取
● 发接口登录绕过
● 半自动手动输入
● 图像识别
● AI深度学习
● 花钱打码
你的框架是如何设计的
● 执行控制
● 测试套件
● 用例
● 业务流 页面对象组合,常用的业务流程
● PageObject 页面对象、页面基础类
● 实用方法 数据读取 数据库操作 日志 发邮件 自己封装的定位方法
● 基础引擎 unittest、pytest、robot、httprunner、自己写
● 数据选择 json/yaml、csv/excel、数据库、conf
● 配置文件 conf/ini py xml
● 增加登录的频次
● 执行用例前,验证状态
● 失败重试,加上登录
● 不建议有依赖
● 确保执行顺序
● 并发时以用例类suite为单位运行
● 记录日志,和当时的环境信息
● 实时截图及保留屏幕录像(如使用docker+zalenium)
● 用例失败后自动重跑(如使用pytest-rerunfailures)
● 使用subprocess运行,并记录子进程退出code
● 缓存上次执行结果
● 测试环境 执行sql
● 生产环境 请求接口或执行UI步骤
更多软件测试相关推荐:
文章来源:网络 版权归原作者所有
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8103),我们将立即处理