推广 热搜: page  小红  红书  数据  论文  考试  数据分析  关键词  哪些  搜索 

Python编写UI自动化方法

   日期:2024-12-30     移动:https://sicmodule.kub2b.com/mobile/quote/16998.html

1、项目稳定且周期较长的项目

2、软件需求变化不大的项目

3、自动化测试程序可以重复使用的项目

测试产品分为 B/S 和 C/S

Python编写UI自动化方法

B/S的工具:QTPAutoRunner  appium

C/S的工具:Selenium、QTP、AutoRunner 、Robot framework

1、单元测试、功能测试、接口测试已经完成的基础上开始做自动化测试

2、为了在做回归测试的时候,提高我们的测试效率

(此处自动化环境搭建用的是Pycharm和Chrom,selenium框架工具也是对应Chrom的

1、安装selenium框架工具pip install selenium


2、我们下载对应驱动包,然后放到path路径中

这里我用的是Chrom来做自动化,所以要安装chromedriver

因为chromedriver需要跟浏览器的版本一样,所以下载前看一下自己的Chrom版本,一定要版本相同,不然可能会出问题,如果没有版本完全一样的,前三段版本号能对的上就可以

Chrom会出现自动更新个的问题,如果自动更新就会跟驱动的版本不一样,所以需要先关闭Chrom的自动更新服务

 

chromedriver的地址

Chrome for Testing availability

这里我们选择这个下载

下载完成后,然后放到path路径中

注意:放在Python的环境变量中,如果不知道在哪可以打开Python控制台输入一下

先输入import sys回车

再输入sys.path 回车

这个路径就是放置selenium的,把下载的.exe扔进去即可

这里我再提供几个其他浏览器的驱动下载地址

Edge:[Microsoft Edge WebDriver - Microsoft Edge Developer](https://developer.microsoft.com/en-    us/microsoft-edge/tools/webdriver/)
 

Safari:https://webkit.org/blog/6900/webdriver-support-in-safari-10/

关于selenium工作原理

selenium他会自动调用对应驱动的,打开浏览器,然后去访问服务器进行操作

接下来打开Pychram就可以开始编写自动化程序了

我们如何定位页面的各种元素呢

我们可以对任意页面中按 F12,这时会打开浏览器控制台

我们可以看到页面各种元素,这样就能够知道我们要定位的元素是哪个

下面是一段简单的代码

 

各部分浏览器的driver

 

driver常用的属性与方法

get(url) 打开对应的网页

driver.back 后退

driver.forward() 前进

driver.refresh() 刷新

属性

driver.current_url 获取页面的URL地址

driver.title 获取页面标题

driver.page_source 获取页面源码

driver.minimize_window() 窗口最小化

time.sleep(3)  等待3秒继续执行

driver.get_window_size() 获取窗口大小

driver_window_size(1440,900) 自定义窗口大小

driver.get_screenshot_as_file('screenshot.png') 获取屏幕截图

我们还可以使用鼠标键盘事件来触发

 
 

这里的: 创建一个 对象,用于模拟鼠标操作

其实有很多方法都可定位 ’a‘ 标签

1. 通过链接的文本内容查找:
link = driver.find_element(By.link_TEXT, '点击这里')
2. 通过部分文本查找:
link = driver.find_element(By.PARTIAL_link_TEXT, '点击')
3. 通过 CSS 选择器查找:
link = driver.find_element(By.CSS_SELECTOR, 'a[href="https://www.csdn.net"]')
4. 通过 XPath 查找:
link = driver.find_element(By.XPATH, '//a[@href="https://www.csdn.net"]')
这些方法可以根据不同的场景,找到你需要点击的超链接元素

关于

 是 Selenium 中一个非常有用的类,用于模拟复杂的用户交互操作,如鼠标移动、点击、双击、拖放等。以下是一些常用的 方法及其用法

1. 鼠标点击操作

click(): 单击指定的元素
click_and_hold(): 在指定元素上按住鼠标按钮,不释放
context_click(): 在指定元素上执行右键单击
double_click(): 在指定元素上执行双击操作

 

2. 键盘操作

send_keys(): 向当前元素发送键盘输入。
send_keys_to_element(): 向指定元素发送键盘输入。
key_down(): 按住某个键,如 Shift 或 Ctrl。
key_up(): 释放某个按键

3.鼠标移动操作

move_to_element(): 将鼠标移动到指定元素上。
move_by_offset(): 将鼠标从当前位置移动指定的偏移量。
 

 

4. 拖放操作

drag_and_drop(): 将元素从源位置拖动并放置到目标位置。
drag_and_drop_by_offset(): 将元素拖动到指定的偏移位置。

 

5. 链式操作 

ActionChains 是支持链式调用,允许你将多个操作组合在一起,然后通过 perform() 执行

 

6. 释放操作

release(): 释放鼠标按键,通常与 click_and_hold() 配合使用

 


7. 滚动操作

scroll_by_amount(): 滚动页面或元素。
 

 

这些方法可以在自动化测试中模拟更复杂的用户行为(所有的测试都是为了防刁民

这里有一个示例来综合展示这些功能

在搜索引擎中搜索关键词并点击第一条结果

本文地址:https://sicmodule.kub2b.com/quote/16998.html     企库往 https://sicmodule.kub2b.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关最新动态
推荐最新动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号