python+selenium
文章平均质量分 57
python+ selenium 自动化测试学习及遇到的问题解决。
爱学习de测试小白
书中自有颜如玉,书中自有黄金屋!
每天进步一点点,拥抱幸福是必然!
展开
-
23-selenium-AutoIt文件上传
目录AutoIt下载及安装AutoIt菜单功能介绍AutoIt使用参数化脚本AutoIt下载及安装下载地址:https://www.autoitscript.com/site/autoit/downloads/ 文档地址:https://www.autoitx.com/Doc/一路next安装即可AutoIt菜单功能介绍SciTE Script Editor 编辑器,在这里编写AutoIt脚本 AutoIt Windows Info 元素定位器,用于识Window原创 2021-04-03 22:30:18 · 349 阅读 · 0 评论 -
22-selenium之grid分布式测试
目录 前言Selenium Grid4介绍下载selenium grid运行selenium grid 1. 命令行启动 2. Json配置文件启动前言Selenium Grid是Selenium套件的一部分,它专门用于并行运行多个测试用例在不同的浏览器、操作系统和机器上。Selenium Grid4介绍Router : 路由,负责将请求转发到正确的组件。它是Grid的入口点,它将接收所有外部请求。路由器的行为取决于请求。如果是新的...原创 2021-03-06 17:51:44 · 759 阅读 · 1 评论 -
21-selenium之options模块
目录 前言加载用户配置文件设置编码添加请求头禁止加载图片无界面运行设置开发者模式启动禁用浏览器弹窗禁用JavaScript隐藏滚动条以最高权限运行添加插件添加代理前言 做自动化测试过程中,有时需要绕过验证码或如下场景中都可以使用该模块禁止图片和视频的加载:提升网页加载速度。 使用请求头:访问移动端的站点,一般这种站点的反爬技术比较薄弱。 添加扩展:像正常使用浏览器一样的功能。 设...原创 2021-03-04 22:29:02 · 3919 阅读 · 3 评论 -
20-定位一闪而过的dialog
1.原创 2021-02-04 14:26:55 · 382 阅读 · 0 评论 -
19-selenium操作已启动的浏览器
步骤找到本地安装的浏览器启动路径,例如Chrome通过命令行启动ChromeDbug模式,如下 # windows $ chrome.exe --remote-debugging-port=9222 # mac $ /Applications/Google/Chrome.app/Contents/MacOS/Google/Chrome -r...原创 2021-02-03 21:55:22 · 385 阅读 · 0 评论 -
18-expected_conditions简介
1. 标题# -*-coding:utf-8一*-# @Time:2021/2/1# @Author: 大海import timefrom selenium import webdriverfrom selenium.webdriver.support import expected_conditions as ecfrom selenium.webdriver.support.wait import WebDriverWaitdriver = webdriver.Chrome()#原创 2021-02-01 20:52:27 · 384 阅读 · 1 评论 -
17-截图screenshot
目录1. 截图方法2. 示例代码 2.1 捕获异常实现截图 2.2 装饰器实现截图1. 截图方法driver.get_screenshot_as_file(filename):将当前窗口的屏幕截图转换为PNG图像文件保存 get_screenshot_as_png():获取作为二进制数据的当前窗口的截图 get_screenshot_as_base64():以base64编码字符串的形式获取当前窗口的屏幕截图,一般使用在HTML中的链接图片2. 示例代码 2.1 捕获...原创 2021-01-23 12:29:57 · 2288 阅读 · 1 评论 -
16-cookie相关操作
目录1. 获取所有cookie2. 添加cookie3. 获取指定cookie4. 清除指定cookie5. 清除所有cookie使用背景:可绕过验证码1. 获取所有cookie使用:driver.get_cookies()# -*- coding: utf-8 -*-# @Time : 2021/1/23# @Author : 大海from pprint import pprintfrom selenium import webdriverdrive原创 2021-01-23 09:31:01 · 266 阅读 · 0 评论 -
15-三种等待方式
目录1. 强制等待2. 隐式等待3. 显式等待4. 总结1. 强制等待方法:sleep(seconds),seconds 等待时间,单位 秒 s 说明:不管浏览器是否加载完了,程序都得等待3秒,不建议使用,严重影响执行速度# -*- coding: utf-8 -*-# @Time : 2021/1/17# @Author : 大海from selenium import webdriverfrom time import sleepdriver = ..原创 2021-01-17 12:11:28 · 1723 阅读 · 0 评论 -
14-定位一组元素
1. 定位一组元素 格式:find_elements_by_xxxx()find_elements_by_id() find_elements_by_name() find_elements_by_class_name() find_elements_by_tag_name() find_elements_by_link_text() find_elements_by_partial_link_text() find_elements_by_xpath() find_eleme...原创 2021-01-17 10:57:08 · 278 阅读 · 0 评论 -
13-上传文件之send_keys
1. input标签先定位input标签,type='file' 使用send_keys上传文件driver.find_element_by_name('file').send_keys(文件路径)原创 2021-01-16 08:53:14 · 736 阅读 · 0 评论 -
12-执行Js代码
目录1. Console 调试Js代码2. 控制滚动调高度3. 控制滚动条横向距离4. 元素聚焦5. 其他1. Console 调试Js代码说明:F12 打开 开发者工具,Console页面可调试Js代码2. 控制滚动调高度顶部:document.documentElement.scrollTop=0 、window.scrollTo(0,document.body.scrollHeight) 底部:document.documentElement...原创 2021-01-15 22:24:50 · 238 阅读 · 0 评论 -
11-下拉框选择-Select类
目录1. 选择某项的3种方法2.返回options信息的方法3.取消选中项的方法1. 选择某项的3种方法select_by_value(value) :通过option标签中的value属性值选择 select_by_index(index):通过索引选择,索引从0开始 select_by_visible_text(text):通过option标签中的文本选择说明:Select(driver.find_element_by_tag_name("select")).select...原创 2021-01-14 19:23:12 · 2786 阅读 · 0 评论 -
10- 弹窗处理-switch_to.alert
目录1. js原生弹框介绍2. 处理弹窗常用方法1. js原生弹框介绍Alerts 警告框 :它显示一条自定义消息, 以及一个用于关闭该警告的按钮, 在大多数浏览器中标记为"确定” Confirm 确认框:确认框类似于警告框, 不同之处在于用户还可以选择"取消"消息 Prompt 提示框:提示框与确认框相似, 不同之处在于它们还包括文本输入. 与处理表单元素类似2. 处理弹窗常用方法text:返回 alert/confirm/prompt 文案 accept():接受现有警告框,原创 2021-01-14 16:48:13 · 3144 阅读 · 0 评论 -
09-多窗口切换-window_handles
1. 常用方法使用背景:有些网站点击链接会新打开一个tab,如下图2个tab;元素定位正确,调试时一直报错,原因是未切切换到对应的窗口句柄,切换到对应的窗口句柄才可以正常操作current_window_handle:获得当前窗口句柄 window_handles:获取所有窗口的句柄到当前会话,返回一个窗口句柄列表 switch_to.window():切换窗口句柄# -*-coding:utf-8一*-# @Time:2021/1/14# @Author: 大海import ti原创 2021-01-14 16:04:34 · 9797 阅读 · 0 评论 -
08-多表单切换-frame/iframe
目录1. 切换frame/iframe2. 其他frame相关1. 切换frame/iframeswitch_to.frame('frame_name') :默认可取id和name属性 switch_to.frame(1):根据frame索引切换 switch_to.frame(Element):没有id、name属性的可先定位到frame/iframe传入element对象即可126邮箱# 通过id 切换iframedriver.switch_to.frame("x-U.原创 2021-01-13 18:38:20 · 391 阅读 · 0 评论 -
07-键盘事件-Keys类
1. 常用事件 send_keys(Keys.BACK_SPACE) :删除键(BackSpace) send_keys(Keys.SPACE) :空格键(Space) send_keys(Keys.TAB) :制表键(Tab) send_keys(Keys.ESCAPE) :回退键(Esc) send_keys(Keys.ENTER) :回车键(Enter) send_keys(Keys.CONTROL,'a'): 全选(Ctrl+A) s原创 2021-01-13 17:30:07 · 655 阅读 · 0 评论 -
06-鼠标事件-ActionChains类
目录1. 常用方法2. 其他方法1. 常用方法perform(): 执行所有 ActionChains 中存储的行为 context_click(): 右键单击 double_click(): 双击鼠标左键 drag_and_drop(): 拖拽到某个元素然后松开 move_to_element(): 鼠标悬停# -*-coding:utf-8一*-# @Time:2021/1/13# @Author: 大海from selenium import webdriverf原创 2021-01-13 08:46:33 · 401 阅读 · 0 评论 -
05-Element对象常用方法
目录1.操作Element对象2.Element常用方法1.操作Element对象clear(): 清除文本 send_keys (value): 模拟按键输入 click(): 单击元素 submit():提交表单,模拟回车操作# -*-coding:utf-8一*-# @Time:2021/1/12# @Author: 大海from selenium import webdriverdriver = webdriver.Chrome()driver.get("...原创 2021-01-12 21:19:37 · 1338 阅读 · 0 评论 -
04-xpath定位
1. xpath简介xpath 是一门在 XML 文档中查找信息的语言2. 术语简介2.1 节点解释:有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="en">Harry Potter</title> <auth...原创 2021-01-10 20:58:01 · 394 阅读 · 0 评论 -
03-selenium元素定位
目录8种基本定位方式1. id2. name3.class name4.tag name5. link text6.partial link text7.xpath8.css selector8种基本定位方式1. idid :根据标签的id属性定位 方法:driver.find_element_by_id() 说明: id一般是唯一的,首选使用id定位# -*- coding: utf-8 -*-# @Ti...原创 2021-01-09 18:45:03 · 150 阅读 · 1 评论 -
02-操作浏览器基本方法
目录1. 打开网址2. 刷新页面3. 前进、后退4. 设置浏览器窗口大小5.截屏6. 退出1. 打开网址get:访问测试的网址# -*- coding: utf-8 -*-# @Time : 2021/1/6# @Author : 大海# 从selenium导入webdriverfrom selenium import webdriver# 实例化浏览器对象# 此处浏览器驱动已添加到环境变量,所以不用写驱动路径driver = webdr...原创 2021-01-06 21:22:15 · 609 阅读 · 0 评论 -
01-Python+Selenium3环境搭建
1. Selenium介绍Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架。它是一款用于运行端到端功能测试的超强工具。您可以使用多个编程语言编写测试,并且 Selenium 能够在一个或多个浏览器中执行这些测试。 Selenium的发展经历了三个阶段,第一个阶段,也就是selenium1的时代,在运行selenium1.0程序之前,我们得先启动seleniumserver端(selenium remote control),我们简称RC。RC主要包括三个部分:laun.原创 2020-12-20 16:38:34 · 412 阅读 · 0 评论