阿里云开发者社区

电脑版
提示:原网页已由神马搜索转码, 内容由developer.aliyun.com提供.

反了!居然让我教她自动化测试!

2024-06-1673
版权
版权声明:
本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简介:反了!居然让我教她自动化测试!


一个做测试的居然让我教她怎么做自动化测试,真是反了……行吧,正好懂一些 Selenium,今天就来跟大家一起了解下 Python如何使用 Selenium进行自动化测试。

简单介绍

Selenium大家应该都很熟悉了吧,简单说它就是个基于浏览器的 Web 自动化测试工具,基本上是自动化测试人员首选工具。因为相比其他工具,它有很多的优势:

  • 支持多种语言,比如 Python、Java、C或C#、ruby 等都支持;
  • 支持多种浏览器, 比如 IE、FireFox、Safari、Opera、Chrome 这些主流浏览器基本都支持;
  • 支持多种操作系统,比如 Windows、Mac、Linux 这个款主流操作系统。

其实单就上面这些优势就足以证明它的强大了,再加上它还支持分布式部署自动化测试程序,在多台不同的机器上同时执行。

是不是感觉很厉害?然而这么强大的工具它居然还是免费的,并且代码已经开源,这简直不敢想象。

说的这么厉害,那它要如何使用呢?

环境安装

首先你得先装好了 Python,然后通过 pip install selenium命令进行安装就可以了(参见 https://pypi.org/project/selenium/)。

安装完 selenium后,还需要再下载 webdriver,不同的浏览器需要下载不同的驱动,以下是常见浏览器驱动的下载地址:

我平时都是用 Chrome浏览器,所以我下载了 chromedriver,但有一点需要注意,你下载的 chromedriver版本要和你安装的浏览器版本一致,不然使用中可能会出现各种问题。

简单开始

好了,现在我们就从最最简单的启动浏览器,然后打开一个网页开始。

  • Chrome 浏览器
// 导入 webdriverfrom selenium import webdriver// executable_path 用于指定driver存放路径browser = webdriver.Chrome(executable_path='/Users/xx/python/chromedriver')// 打开百度页面browser.get('https://wwww.baidu.com/')

写好后保存为 test1.pyPython 文件,然后执行命令 python test1.py,然后就可以看到如下效果:

程序通过 selenium调用 chromedriver驱动 Chrome浏览器启动,并让浏览器打开百度的首页,大概就是这么个过程。

除了使用 Chrome浏览器,我们也可以使用其他的,比如 FirefoxEDGE等。

  • Firefox 浏览器
// 导入 webdriverfrom selenium import webdriver// executable_path 用于指定driver存放路径browser = webdriver.Firefox(executable_path='/Users/xx/python/firefoxdriver')// 打开百度页面browser.get('https://wwww.baidu.com/')
  • EDGE 浏览器
// 导入 webdriverfrom selenium import webdriver// executable_path 用于指定driver存放路径browser = webdriver.Edge(executable_path='/Users/xx/python/edgedriver')// 打开百度页面browser.get('https://wwww.baidu.com/')

好了,通过对比上面代码相信你也能看出来,其实用哪个浏览器其实区别都不是很大,这里就不再一一截图了,接下来我就使用 Chrome来介绍和演示效果了。

简单使用

当然启动浏览器,并打开页面我们只是走出了第一步,也就是写了个 Hello World,下面我们再慢慢介绍如何使用,再来看个简单例子:

// 导入 webdriverfrom selenium import webdriver// executable_path 用于指定driver存放路径browser = webdriver.Chrome(executable_path='/Users/xx/python/chromedriver')// 打开百度页面browser.get('https://wwww.baidu.com/')// 在搜索框内输入 `python selenium` 并点搜索返回结果browser.find_element_by_id("kw").send_keys("python selenium")

好了,我们再保存下然后执行命令 python test1.py,然后看下效果:


没错,这次是打开百度首页后,又在搜索框输入 python selenium字符串,并且点击 百度一下按钮搜索出了结果。

但它是怎么获取到搜索框,这里我们用的是 find_element_by_id()方法,也就是通过 HTML标签元素的 id找到了这个输入框。

那除了通过这个方法,还有别的方法能找到搜索框吗?

总结

好了,今天我们简单介绍了下 selenium是什么,以及在 Python中如何安装配置使用 selenium。如果你也对这个工具感兴趣,可以继续关注了解更多。OK,今天就聊这些,如果你喜欢记得点 在看

相关文章
|
5月前
|
人工智能自然语言处理机器人
一键部署开源DeepSeek并集成到钉钉
DeepSeek发布了两款先进AI模型V3和R1,分别适用于对话AI、内容生成及推理任务。由于官方API流量限制,阿里云推出了私有化部署方案,无需编写代码即可完成部署,并通过计算巢AppFlow集成到钉钉等渠道。用户可独享资源,避免服务不可用问题。部署步骤包括选择机器资源、配置安全组、创建应用与连接流,最终发布应用版本,实现稳定高效的AI服务。
一键部署开源DeepSeek并集成到钉钉
|
3月前
|
存储SQL关系型数据库
docker部署n9e开源版本7.4.0
n9e开源版本7.4.0
16900
|
6月前
|
安全ServerlessAPI
多模态数据信息提取解决方案评测
该方案展示了如何利用阿里云的多模态大模型服务进行文本、图片和文档的信息提取。通过函数计算(FC)调用百炼模型服务API,实现信息提取功能。具体步骤包括: 1. **开通百炼模型服务**:获取API Key,确保可以调用大模型。 2. **部署应用**:使用函数计算部署应用模板,配置参数并创建环境。 3. **访问示例应用**:通过提供的域名访问示例网站,测试信息提取功能。 4. **清理资源**:删除函数计算和OSS Bucket等资源,避免产生额外费用。 此方案具备多模态推理、易于扩展、灵活调用模式和便捷安全的云产品接入等优点,适用于多种业务需求。
2452828
|
9月前
|
存储算法C语言
通义灵码在考研C语言和数据结构中的应用实践 1-5
通义灵码在考研C语言和数据结构中的应用实践,体验通义灵码的强大思路。《趣学C语言和数据结构100例》精选了五个经典问题及其解决方案,包括求最大公约数和最小公倍数、统计字符类型、求特殊数列和、计算阶乘和双阶乘、以及求斐波那契数列的前20项和。通过这些实例,帮助读者掌握C语言的基本语法和常用算法,提升编程能力。
21544
|
机器学习/深度学习存储边缘计算
深度学习在医疗影像诊断中的应用与前景
深度学习技术正在迅速变革医疗影像诊断领域,提升了诊断精度和效率。本文探讨了深度学习在医学影像分析中的应用场景、主要技术手段以及未来的研究方向,以期为医疗行业的发展提供前瞻性的视角。
18133
SpringBoot 如何使用 @ExceptionHandler 注解进行局部异常处理
SpringBoot 如何使用 @ExceptionHandler 注解进行局部异常处理
|
JavaScript安全前端开发
Vue.js 2023 年最新路线图
Vue.js 2023 年最新路线图
|
消息中间件网络性能优化API
推或拉? rabbitMQ 消费模式该如何选择
推或拉? rabbitMQ 消费模式该如何选择
60911
|
安全搜索推荐数据库
网站被黑检测与网站被黑处理方法
看到此文后,我认为你应该试着通过此文的方法检测一下你的网站是否被黑,因为有可能你的网站被黑了,连你自己都不知道,从下面的图片可以明显的看得出,我的网站也曾被黑过,但这位大神并没有打算处理我的网站,所以只是在网站上传一个文件来提醒我的,或许大家的网站中也有类似的情况。
1126402
|
UbuntuLinux
No manual entry for ls解决办法
No manual entry for ls解决办法