栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

airtest+selenium实现web网页自动化操作:定位、截图、断言、录制

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

airtest+selenium实现web网页自动化操作:定位、截图、断言、录制

在窗口中选中selenium window,左侧就出现这个辅助窗了。

在选项——设置里,添加chrome路径

点击 就可以打开浏览器,然后在airtest上面出现的黄色横条选择yes,就会出现几行初始化脚本。

 定位

点击后,鼠标放到浏览器上就可以看到元素信息,点击元素,就会自动生成使用xpath定位的脚本,

点击start_web可以快速自动生成当前窗口的网址

截图

生成截图后缀名为.jpg,snapshot(filename='D://a.jpg',mag='这里是massage')

有时候都自动定不了,所以除了自动生成也可以根据其属性自己写

 录制

先获取当前qq音乐网址,再点击,点击浏览器所在的qq音乐的页面,点击排行榜,点击人世间播放,录制结束点击,运行脚本

driver.switch_to_new_tab() 表示切换标签页

 

 

截图 

断言

两种:定位断言,截图断言

driver.get("https://y.qq.com/")

if driver.assert_template(Template(r"tpl1646450422553.png", record_pos=(0.174, -0.043), resolution=(1600, 900)), "网络歌曲测试点"):
    touch(Template(r"tpl1646450422553.png", record_pos=(0.174, -0.043), resolution=(1600, 900)))
    print("存在已点击")
else:
    print("不存在")

value = driver.assert_exist("//a[@title='排行榜']", "xpath", "排行榜测试点.")
try:
    assert_equal(value, "排行榜", "值为:排行榜")
except AssertionError:
    print("值断言失败")

 如果报错了[Errno 28] No space left on device,清理下内存就可以了

切换窗口和前进后退网页

driver.get("https://y.qq.com/n/ryqq/songDetail/002vjCKK2NwOCf")
driver.find_element_by_xpath("//*[@id="app"]/div/div[2]/div/div/div[3]/a/i").click()
driver.switch_to_previous_tab()#切换到上一个窗口
driver.find_element_by_xpath("//a[@title='分类歌单']").click()
driver.back()#后退浏览器
driver.forward()#前进浏览器
driver.switch_to_new_tab()#切换到当前最新窗口

 小结,以下来自于Airtest Project

元素定位语句
find_element_by_id()
find_element_by_name()
find_element_by_class_name()
find_element_by_xpath()
find_element_by_link_text()
find_element_by_partial_link_text()
find_element_by_css_selector()

操作元素
元素点击:
driver.find_element_by_xpath("[@id="right_content"]").click()
输入:
driver.find_element_by_id("title").send_keys("123")
元素存在:
driver.assert_exist("//div[@alt='到学术首页']", “xpath”",“请填写测试点.")

下拉框定位
引入下拉框类:Select
from selenium.webdriver. support.select import Select
定位到下拉框元素:
ime_select = driver.find_element_by_id(' ime')
实例下拉框类:
select = Select (ime_select)
3种定位方式:
select.select_by_index(0)

select.select_by_value('2')
select.select_by_visible_text('关闭')

弹出框定位
引入弹出框类:alert
from selenium.webdriver.common.alert import alert
获取弹出框的文本信息:
driver.switch_to_alert().text
点击弹出框的确认按钮:
driver.switch_to_alert().accept()
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/754441.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号