一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第三篇博文 二.Selenium第一篇和第二篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! [Selenium02篇]python+selenium实现Web自动化:鼠标操作和键盘操作! 三.Seleniu…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 二.话不多说,直接开干,开始搭建自动化测试环境 这里以前在CSDN写过一篇很详细的博文,零基础的小白都可以看懂,地址如下: python+selenium环境搭建步骤 三.Selenium 原理 Selenium 是一套完整的 web 应用程序测试系统 ,它包含了测试录制(Selenium IDE).编写及运行(Selenium Remote Contro…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第五篇博文 二.Selenium前四篇博文地址: [Selenium篇01]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! https://www.cnblogs.com/csmashang/p/12705756.html [Selenium02…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第六篇博文 二.Selenium前五篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! [Selenium02篇]python+selenium实现Web自动化:鼠标操作和键盘操作! [Selenium03篇]…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第四篇博文 二.Selenium前三篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! [Selenium02篇]python+selenium实现Web自动化:鼠标操作和键盘操作! [Selenium03篇]…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第七篇博文 二.Selenium前六篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! [Selenium02篇]python+selenium实现Web自动化:鼠标操作和键盘操作! [Selenium03篇]…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博文 二.Selenium第一篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! 三.Selenium之鼠标操作和键盘操作 1.鼠标事件 在webdriver中,鼠标操作的方法封装在 ActionChai…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.元素的基本操作:2.等待操作:3.iframe操作:4.alert弹出框 ​ 下篇主要内容:1.鼠标操作:2.键盘操作:3.下拉框操作:4.js处理 元素基本操作 常用操作 ​ 关键代码: 点击:ele.click() 输入内容:ele.send_keys("内容") 清空内容:ele.cle…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.鼠标操作:2.键盘操作:3.下拉框操作:4.js处理 ​ 上篇主要内容:1.元素的基本操作:2.等待操作:3.iframe操作:4.alert弹出框 传送门 鼠标操作 ​ selenium的ActionChains类提供了一系列模拟鼠标操作的方法,主要操作流程:1.存储鼠标操作:2.调用perform(…
警告框处理 在WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confirm/prompt,然后使用text/accept/dismiss/ send_keys等方法进行操作. text:返回 alert/confirm/prompt 中的文字信息. accept():接受现有警告框. dismiss():解散现有警告框. send_keys(keysToSend):发…
​ 我们在做WEB自动化时,最根本的就是操作页面上的各种元素,而操作的基础便是元素的定位,只有准确地定位到唯一元素才能进行后续的自动化控制,下面将对各种元素定位方式进行总结归纳. ​ 说明:以下操作统一使用百度首页<www.baidu.com>进行示例,鼠标右键然后点击检查(或按f12)可以查看具体的前端代码. 单一属性定位 ​ 6种单一属性定位 : id,name,class name,tag name,link,partial_link ​ 2种多样式定位:css.xpath(强烈推荐)…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html PO模式 ​ Page Object(简称PO)模式,是Selenium实战中最为流行,并且是自动化测试中最为熟悉和推崇的一种设计模式.在设计自动化测试时,把页面元素和元素的操作方法按照页面抽象出来,分离成一定的对象,然后再进行组织. ​ 做web自动化最头疼的一个问题,莫过于页面变化了,如果没有使用PO设计模式,页面一变化…
简单介绍 selenium ​ selenium是一个用于测试web网页的自动化测试工具,它直接运行在浏览器中,模拟用户的操作.…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 关于上传操作 ​ 上传有两种情况: 如果是input可以直接输入路径的,那么直接使用send_keys(文件路径)输入路径即可: 非input标签的上传,则需要借助第三方工具:第三方库 pywin32.第三方工具pyautogui等等. ​ 那这里针对以上两种情况分别介绍一下具体的解决方法. input标签 ​ 定位到元素,…
1. windows窗口切换:切换到要操作的窗口 有多个窗口: 1. 触发新窗口的出现 2. 得知道新窗口是谁 -- 依据窗口的window_handle来识别窗口 3. 得到窗口的window_handle -- driver.window_handles(当前打开的所有窗口的句柄)         A. 得到的是一个有序列表         B. 新窗口: -1 4. 切换:driver.switch_to.window(要切换的窗口的句柄) from selenium import web…
1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os 5 import time 6 7 dr = webdriver.Firefox() 8 file_path = 'file:///' + os.path.abspath('frame.html') 9 dr.get(file_path) 10 11 # 切换到iframe(id="if"…
上一篇需要手工去到cmd下执行脚本,不符合自动化测试的终极目标.现我们集成到Jenkins上,通过Jenkins一键执行或定时任务执行. 参考: https://www.cnblogs.com/ceshi2016/p/8444468.html https://www.cnblogs.com/lcosima/p/7231581.html https://blog.csdn.net/yfx000/article/details/52023654 执行效果: Jenkins配置 1. 首先,需要添加一…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 前言 ​ 本文主要介绍selenium控制浏览器一些常用属性和方法,包括控制窗口大小.页面前进后退.页面刷新.打开或关闭标签页.滚动条等等 设置浏览器大小 import time from selenium import webdriver # 浏览器实例化 driver = webdriver.Chrome() # 把浏览…
我用jquery只实现了文本框的移动(暂时上下移动等同于左右移动) $(function () { var cols = 1;//按一下跳几个控件 var obj = $("input[id^='prOrdProCount_']");//一共有多少个控件 var num = $("input[id^='prOrdProCount_']").length; $("input").bind("keydown", function…
在写完上一篇“基于Selenium的Web自动化框架”(http://www.cnblogs.com/AlwinXu/p/5836709.html)之后一直没有时间重新审视该框架,正好趁着给同事分享的机会,重新分析了一下框架,发现了很多不足之处,所以才有了这篇增强版. 到底在框架的哪一部分做了增强呢?这次主要从设计模式的角度来简单介绍一下. 首先我们来看一下之前是如何书写页面模式中的类的: BasePage: class BasePage(object): """descri…
对于一个自动化的初学者来说会很常见的遇到元素明明存在却始终定位不到, 从而导致脚本报错,当然定位不到元素的原因很多, 其中一种就是多层框架iframe导致的 下方截图示意: 下方为写脚本时候的示例并其中还包含了下拉框定位问题 惜阳在开始写此模块自动化的时候,想要定位“审核状态“的下拉框但没有注意到iframe问题,导致报错报的自己都怀疑人生 后来才发现还有iframe,于是正确代码如下: #首先进入要操作的iframe模块 iframe=driver.find_element_by_xpath(…
JavaScript向select下拉框中加入和删除元素 1.说明 a   利用append()方法向下拉框中加入元素 b   利用remove()方法移除下拉框中最后一个元素 2.设计源代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html x…
JavaScript向select下拉框中添加和删除元素 1.说明 a   利用append()方法向下拉框中添加元素 b   利用remove()方法移除下拉框中最后一个元素 2.设计源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xm…
课程介绍 课程主题:<Selenium+Pytest Web自动化实战> 适合人群: 1.功能测试转型自动化测试 2.web自动化零基础的小白 3.对python 和 selenium 有兴趣的同学 4.已经有一些基础,定位不熟练,没完整写过一整个项目的同学 5.想学pytest框架的同学 6.课程还没更新完,但每天都会更新 报名方式 本次报名统一在网易云课程平台报名学习,正规平台,放心学习!点图片立即报名参与课程 注意事项: 1.不要用 iOS 手机端下单(手续费太贵,扣33%),尽量在电脑…
女友由于工作上的失误,将公司RDM中的某一字段的2000条数据给删除了.....就算是重新添加字段,但是与其他数据的关联性已经不在了.由于每天的数据修改量大,有关部门不愿意恢复数据库,因此只能一条条的手动添加啦.我看了下添加流程,估计了修改一条信息至少需要30s,那么2000条数据所需要的时间.....数据还在不停的变动,每天上班还有其他事情.身为程序猿的我,只好拿出自动化终极工具Selenium来拯救她了! 一. 元素定位问题 一些基本的元素定位方法,官方文档上面已经有详细的说明了.这里就不啰…
1.环境搭建: eclipse4.8 + java1.8 + selenium-3.14 基本都是使用最新版 (1) eclipse4.5下载:http://www.eclipse.org/downloads/ (2) java8官方网站下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html (3) jdk安装成功后,要配置环境变量 (4) selenium各版本jar包下载地址…
测试过程中,偶尔会碰到一些页面的隐藏元素,如下,是小编举的一个简单的例子: test.html <html> <head></head> <body> <select style="display:none;"> <option value="volvo">Volvo</option> <option value="saab">Saab</opt…
环境准备 1.1 python3环境安装 1.2 selenium3和chrome环境 1.3 pycharm安装 webdriver API 2.1基本操作 2.2元素定位id_name_class 2.3元素定位tag_link 2.4元素定位xpath_css 2.5浏览器窗口大小设置 2.6多窗口切换handle 2.7iframe操作 2.8alert相关操作 2.9select下拉框操作 2.10鼠标悬停…
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select类 1.在Selenium中,针对html的标签select多选下拉列表有几种方法: selectByIndex(index); //根据索引选择 selectByValue(value); //根据value属性选择 selectByVisibleText(text); //根据选项文字选择 注意…
前言 最近由于工作原因,更新慢了一点,今天终于抽出一点时间给大家继续更新selenium系列,学习的脚本不能停止,希望小伙伴能多多支持. 本篇以百度设置下拉选项框为案例,详细介绍select下拉框相关的操作方法. 一.认识select    1.打开百度-设置-搜索设置界面,如下图所示 2.箭头所指位置,就是select选项框,打开页面元素定位,下方红色框框区域,可以看到select标签属性: <select id="nr" name="NR">   …