news 2026/1/10 14:30:00

UI自动化测试详解(Python+selenium)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UI自动化测试详解(Python+selenium)
前言

我们在进行UI自动化测试时,一般采用java+selenium或者python+selenium的方式。由于python比较简单,上手快,因此建议大家采用python+selenium的方式来进行UI自动化。

1、安装pycharm

PyCharm是一种Python IDE(Integrated Development Environment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。

2、安装python环境

下载python 官网https://www.python.org下载安装包.exe,安装,并添加环境变量,具体可以自行百度。

新建项目

打开pycharm,在左上角File选择new project

在根目录上右键,新建一个python file,并命名。

安装selenium

Selenium 是一个用于Web 应用程序的自动化测试工具。

左上角File-settings-project:项目名-project interpreter,点击+,搜索selenium,点击install package,安装成功后,点击确定。
![](https://img-blog.csdnimg.cn/img_convert/b1609d3de18ee0a7f496cb1e4aef3981.png

安装驱动

Selenium无法直接操作浏览器,而是通过各个浏览器厂商提供的浏览器驱动来操作浏览器。

首先查看自己所使用浏览器的版本,百度搜索对应浏览器版本的驱动下载地址,如谷歌浏览器驱动:http://chromedriver.storage.googleapis.com/index.html 找到对应的版本进行下载,需要和浏览器版本一致(前三个位即可)。

下载解压,将驱动放置python安装路径下。

开始第一个脚本
  1. from selenium import webdriver

  2. from selenium.webdriver.common.by import By

  3. driver=webdriver.Chrome()

  4. driver.get('http://www.baidu.com')

  5. driver.find_element(By.ID,'kw').send_keys('selenium')

  6. driver.find_element(By.ID,'su').click()

  7. driver.quit()

AI写代码python运行

在test.py文件中输入如上代码,点击运行按钮。

执行效果为自动打开谷歌浏览器,打开百度首页,在百度搜索输入框输入selenium,点击百度一下按钮,然后关闭浏览器。

脚本解析

导包

selenium实际是一个包,如下图结构,下面有common包和webdriver包。

在使用包下面的类或者函数之前,需要先导入。

第一行我们从selenium中导入了整个webdriver包,用来支持新建浏览器实例。

第二行我们导入了selenium包下的webdriver包下的common包下的by文件中的By类。用来支持以By.的方式定位元素。

浏览器实例

driver=webdriver.Chrome()

AI写代码

实例化Chrome类,生成一个谷歌浏览器的实例,后续我们用这个实例来进行浏览器操作。
同样,如果要驱动火狐浏览器,

driver=webdriver.Firefox()

AI写代码

驱动edge浏览器,

driver=webdriver.Edge()

AI写代码

前提是已安装对应的驱动。

访问url

driver.get('http://www.baidu.com')

AI写代码

通过实例的get方法,输入url作为参数,这个实例就能打开百度的网址

定位元素

想要让程序操作页面元素,我们需要知道要操作的元素是哪个,就需要对元素进行定位。
可以看文章了解元素定位方式。

这里用的就是通过id的方式进行定位,它的返回值是一个WebElement类型,即网页元素。

driver.find_element(By.ID,'kw')

AI写代码

元素操作

当对元素定位后,我们就可以对元素进行操作了。想一想我们在做手工测试的时候,会对元素做什么操作?

我们可以给一个文本框输入值,可以点击一个按钮,

driver.find_element(By.ID,'kw').send_keys('selenium')

AI写代码

send_keys()方法,可以给元素输入值

driver.find_element(By.ID,'su').click()

AI写代码

AI生成项目

click()方法,用来点击元素。
另外,我们还可以清空元素的值。

driver.find_element(By.ID,'kw').clear()

AI写代码

当然还有其他元素操作的方法。我们也可以先获取到元素,再调用方法,如

  1. ele=driver.find_element(By.ID,'kw')

  2. ele.send_keys('selenium')

AI写代码python运行

关闭浏览器

driver.quit()

AI写代码

调用实例的quit()方法来关闭浏览器。

总结

本文介绍了UI自动化测试入门的第一个测试脚本,并对脚本内容进行了详细的解析,看完此文,相信没有UI自动化基础的同学,也能够开始UI自动化测试用例的编写了!

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/10 14:28:33

Qwen2.5多模态开发入门:1小时1块,随用随停

Qwen2.5多模态开发入门:1小时1块,随用随停 1. 什么是Qwen2.5多模态开发? Qwen2.5是阿里云最新开源的多模态大模型系列,它能够同时处理文本、图像、音频和视频等多种输入形式,并生成相应的内容输出。简单来说&#xf…

作者头像 李华
网站建设 2026/1/10 14:28:14

AI智能实体侦测服务安全性配置:API访问控制实战教程

AI智能实体侦测服务安全性配置:API访问控制实战教程 1. 引言 1.1 业务场景描述 随着AI模型在企业级应用中的广泛部署,API接口的安全性已成为不可忽视的关键问题。以“AI智能实体侦测服务”为例,该服务基于RaNER模型提供高性能中文命名实体…

作者头像 李华
网站建设 2026/1/10 14:27:08

常见的8个Jmeter压测问题,你知道吗?

为什么在JMeter中执行压力测试时,出现连接异常或连接重置错误? 答案:连接异常或连接重置错误通常是由于服务器在处理请求时出现问题引起的。这可能是由于服务器过载、网络故障或配置错误等原因导致的。 解决方法: 确定服务器的…

作者头像 李华
网站建设 2026/1/10 14:25:32

政府公文信息抽取:AI智能实体侦测服务格式兼容性处理教程

政府公文信息抽取:AI智能实体侦测服务格式兼容性处理教程 1. 引言 1.1 业务场景描述 在政府机关、行政单位和公共事务管理中,每日需处理大量非结构化文本数据,如政策文件、会议纪要、通报材料等。这些文档包含大量关键信息实体——人名、地…

作者头像 李华