airtest web 录制滑块_Airtest之web自动化(一)

Airtest之web自动化(一)

[此文档有许多涉及到gif动图的地方,请全屏观看]

了解Airtest:

简介:

Airtest是由网易团队开发的一款自动化框架,前期运用与游戏测试(通过截图识别),后来又被运用到安卓测试以及web测试。这款自动化框架如此强大的原因来自其团队自己开发的一个图像识别框架,这个框架的祖宗就是一种新颖的图形脚本语言Sikuli。Sikuli这个框架的原理是这样的,计算机用户不需要一行行的去写代码,而是用屏幕截屏的方式,用截出来的图形摆列组合成神器的程序,这是Airtest的一部分。另外,Airtest也基于poco这个UI控件搜索框架,这个框架也是网易自家的跨平台UI测试框架,原理类似于appium,通过控件的名称,id之类的来定位目标控件,然后调用函数方法,例如click(),send_keys()之类的方法来对目标控件进行点击或者是操作。

Airtest展示:

这个动图是Airtest官方文档中截取的,细心的同学可能已经发现:Airtest实现的脚本是python+selenium,刚刚接触到这款框架的时候,我在想这不就是python+selenium的再封装吗,也没有什么新颖的地方。但是细心认真的看,才会发现Airtest强大的之处...

一:Airtest打开浏览器,导入必须的类

在配置好chrome浏览器,以及webdriver之后(此操作很简单),点击AirtestIDE中selenium窗左上方的像地球一样的图标,打开浏览器,然后脚本编辑窗会提示你是否导入必要的模块,点击

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
滑块登录是一种常见的验证码形式,它通过让用户拖动滑块来验证用户的人类身份。以下是一个使用Python实现滑块登录的示例: 1. 安装selenium和WebDriver ```python pip install selenium ``` 并下载浏览器对应的WebDriver,例如Chrome的WebDriver可以在这里下载:https://sites.google.com/a/chromium.org/chromedriver/downloads 2. 导入必要的库 ```python from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time ``` 3. 打开网站并获取滑块和背景图 ```python # 打开网站 url = "https://www.example.com/login" driver = webdriver.Chrome() driver.get(url) # 获取滑块和背景图 slider = driver.find_element_by_class_name("slider") bg_img = driver.find_element_by_class_name("bg-img") ``` 4. 计算滑块需要移动的距离 ```python # 计算滑块需要移动的距离 slider_width = slider.size.get("width") bg_img_width = bg_img.size.get("width") drag_distance = bg_img_width - slider_width ``` 5. 模拟滑动操作 ```python # 模拟滑动操作 action = ActionChains(driver) action.click_and_hold(slider).perform() action.move_by_offset(drag_distance, 0).perform() action.release().perform() # 等待一段时间,等待滑块验证完成 time.sleep(5) # 如果登录成功,可以获取登录后的页面信息 if driver.current_url == "https://www.example.com/login/success": print("登录成功") else: print("登录失败") ``` 完整代码如下: ```python from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time url = "https://www.example.com/login" driver = webdriver.Chrome() driver.get(url) slider = driver.find_element_by_class_name("slider") bg_img = driver.find_element_by_class_name("bg-img") slider_width = slider.size.get("width") bg_img_width = bg_img.size.get("width") drag_distance = bg_img_width - slider_width action = ActionChains(driver) action.click_and_hold(slider).perform() action.move_by_offset(drag_distance, 0).perform() action.release().perform() time.sleep(5) if driver.current_url == "https://www.example.com/login/success": print("登录成功") else: print("登录失败") driver.quit() ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值