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

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

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

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

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

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

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

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

 定位

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

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

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

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

截图

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

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

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

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

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

 录制

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

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

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

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

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

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

截图 

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

断言

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

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("值断言失败")

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

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

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

切换窗口和前进后退网页

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

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+selenium实现web网页自动化操作:定位、截图、断言、录制_第18张图片

 小结,以下来自于Airtest Project

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

元素定位语句
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()
 

你可能感兴趣的:(selenium,自动化,测试工具)