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

相关推荐
秦jh_9 分钟前
【Linux】多线程(概念,控制)
linux·运维·前端
蜗牛快跑21322 分钟前
面向对象编程 vs 函数式编程
前端·函数式编程·面向对象编程
Dread_lxy23 分钟前
vue 依赖注入(Provide、Inject )和混入(mixins)
前端·javascript·vue.js
涔溪1 小时前
Ecmascript(ES)标准
前端·elasticsearch·ecmascript
榴莲千丞1 小时前
第8章利用CSS制作导航菜单
前端·css
奔跑草-1 小时前
【前端】深入浅出 - TypeScript 的详细讲解
前端·javascript·react.js·typescript
羡与2 小时前
echarts-gl 3D柱状图配置
前端·javascript·echarts
guokanglun2 小时前
CSS样式实现3D效果
前端·css·3d
咔咔库奇2 小时前
ES6进阶知识一
前端·ecmascript·es6
渗透测试老鸟-九青2 小时前
通过投毒Bingbot索引挖掘必应中的存储型XSS
服务器·前端·javascript·安全·web安全·缓存·xss