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'})

相关推荐
Jackson__10 小时前
Agent Skill 和 Rules 有什么区别?
前端·agent·ai编程
不要卷鸿蒙啊10 小时前
【鸿蒙开发】HMRouter一款和好用的管理路由三方工具
前端·harmonyos
李剑一10 小时前
数字孪生大屏必看:Cesium 3D 模型选中交互,3 种高亮效果拿来就用!
前端·vue.js·cesium
奶昔不会射手10 小时前
自定义vue3函数式弹窗
前端·javascript·css
new code Boy10 小时前
前端全栈之路
前端
牛奶11 小时前
为什么敲几个字母就能访问网站?DNS原理大揭秘
前端·http·dns
wuhen_n11 小时前
破冰——建立我们的AI开发实验环境
前端·javascript
HelloReader11 小时前
Flutter 自适应布局一套代码适配手机和平板(十二)
前端
牛奶11 小时前
HTTP裸奔,HTTPS穿盔甲——它们有什么区别?
前端·http·https
梓言11 小时前
tailwindcss构建执行npm exec tailwindcss init -p 报错
前端