web自动化测试Day4

目标

下拉选择框;弹出框;滚动条操作;frame表单切换;多窗口切换;窗口截图、验证码处理

定位下拉框

select选择框

下标从0开始

#通过下标形式访问

#通过value值形式访问


注意事项

实例化select时候,需要的参数是select标签元素

调用select标签时候,通过索引、value属性值、显示文本去控制,不用click事件

弹出框处理!!!

案例

driver.find_element_by_css_selector('#alerta').click()

#切换到alert并返回

at=driver.switch_to.alert

#同意

at.accept()

#取消

at.dismiss()

#获取文本方法不通过括弧

alert.txt

滚动条

selenium中没有提供操作滚动条的方法,但是提供了可执行脚本js,可以通过js脚本来达到操作滚动条的目的

frame切换、多窗口切换!!!

Q:当前页面无法定位注册页面A和B

扩展

why切换窗口

driver.current_window_handle#获取当前窗口句柄

driver.window_handles#获取所有窗口句柄 只要不是当前的主窗口句柄,就一定是新开的窗口

如何切换?

截屏

失败截图,让错误看的更直观

driver.get_screenshot_as_file(imgpath)

imgpath:保存路径

验证码

selenium中没有对验证码处理的方法,以下几种

1.在测试环境,公司自己的项目 2.测试环境或线上环境,公司自己项目

3.识别率低,不推荐 4.推荐

cookie相关介绍

案例

使用cookie绕过百度登录

步骤:

cookies=driver.get_cookies()#获取所有信息,返回的是列表

设置cookie信息:

driver.add_cookie({'name':'BDUSS','value':'XXXXXX'})

相关推荐
凤凰战士芭比Q29 分钟前
web中间件——(二)Nginx(高级功能、优化)
前端·nginx·中间件
阿珊和她的猫32 分钟前
表单数据验证:HTML5 自带属性与其他方法的结合应用
前端·状态模式·html5
谷粒.2 小时前
Cypress vs Playwright vs Selenium:现代Web自动化测试框架深度评测
java·前端·网络·人工智能·python·selenium·测试工具
小飞侠在吗7 小时前
vue props
前端·javascript·vue.js
DsirNg8 小时前
页面栈溢出问题修复总结
前端·微信小程序
小徐_23338 小时前
uni-app 也能远程调试?使用 PageSpy 打开调试的新大门!
前端·微信小程序·uni-app
大怪v8 小时前
【Virtual World 03】上帝之手
前端·javascript
别叫我->学废了->lol在线等10 小时前
演示 hasattr 和 ** 解包操作符
开发语言·前端·python
霍夫曼10 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
DARLING Zero two♡11 小时前
浏览器里跑 AI 语音转写?Whisper Web + cpolar让本地服务跑遍全网
前端·人工智能·whisper