
Selenium自动化测试
魔都飘雪
魔都,一座稍不努力就会把你打回原形的城池!
展开
-
python处理web网页cookies实现自动登录
废话少说,直接上代码。嘎嘎。。。# coding=utf-8from selenium import webdriverimport time# 手动登录百度并勾选“下次免登陆”,再用代码加载配置文件打开百度即可实现自动登录。# 使用代码自动登录百度,退出后,代码再加载配置文件是不能自动登录的,必须手动登录一次并勾选上“下次免登陆”# 配置文件地址profile_directo原创 2017-09-06 21:03:07 · 8612 阅读 · 1 评论 -
selenium+python自动化-python3.5.4上SendKeys报错用PyUserInput取代
前言首先安装pywin32,小编安装过了,就不安装了,注意安装版本。1.pywin32下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxmlpython2上安装SendKeys库,对于不好定位的元素,用快捷键操作是极好的,那么在3.5.4上安装时,会报错python3.5.4安装SendKeys报错1.python3.5.4安装SendKeys是...原创 2018-03-16 21:26:44 · 4862 阅读 · 0 评论 -
Selenium3源码之common下action_chains.py模块分析
介绍本文主要对action_chains.py模块的源码进行分析说明,其代码位置如图:在action_chains.py模块中定义和实现了类:ActionChains,主要实现鼠标移动,鼠标按键动作,按键和上下文菜单交互。这对于执行更复杂的操作(如鼠标悬停、拖放)非常有用。该模块源码是掌握selenium必须阅读和掌握的!!!分类说明下面我们通过该源码模块的结构大致了解下ActionChains类...转载 2018-03-22 20:59:21 · 659 阅读 · 0 评论 -
Selenium3源码之common package篇
简介本文主要分析Selenium3源码common package下各模块和package的说明common package作用是定义和实现了webdriver通用的基础能力,主要包含以下:键盘映射DesiredCapabilitieswebdriver基础service和Proxyhtml5支持移动端基础支持,例如各种动作、设备交互、定位方式等web端基础支持,例如各种动作、定位方式动作链构建(...转载 2018-03-19 20:34:18 · 782 阅读 · 0 评论 -
python3 Selenium启动加载用户配置的浏览器(Chrome/Firefox)
Selenium操作浏览器是不加载任何配置的,网上关于Firefox加载配置的多点,Chrome资料很少,下面是关于加载Chrome配置的方法: 一、加载所有Chrome配置 用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下:#coding=utf-8from selenium import w...原创 2018-03-21 11:03:12 · 5055 阅读 · 0 评论 -
python selenium使用chrome/firefox的已存在的cookie访问网站
如果我们在跑自动化程序之前,已经登录了某个网站,那么,我们就可以跳过输入用户名、密码以及验证码的环节,直接读取浏览器中已经保存的cookie来访问网站,就可以顺利进去了。由于selenium启动某个浏览器时,它启动的是一个全新的浏览器,没有带任何cookie,所以我们必须添加一些代码,来让程序加载这些cookie。我们分别用chrome和firefox来操作,看看对应的实际代码是什么。...原创 2018-03-21 11:21:19 · 9144 阅读 · 0 评论 -
Python自定义HtmlTestRunner测试报告
简述 使用selenium webdriver + Python做自动化测试,执行完成后要生成测试报告,Python我们使用的HTMLtestrunner 进行生成,但是默认提供的生成报告内容,并不能满足我们的需求,怎么才能让测试报告数据更清晰,内容更丰富呢。对于一些人来说,可能已经重写了报告生成方式,放弃使用HTMLtestrunner。但是对于python小白可能还做不到,只能...转载 2018-04-01 18:44:43 · 5153 阅读 · 0 评论 -
Selenium Webdriver常见错误、异常解答
Q:启动IE浏览器时突然报下面错误,不能正常使用。 WebDriverException: Message: Unexpected error launching Internet Explorer. Browser zoom level was set to 94%. It should be set to 100%A:原因是IE页面的使用的的显示比例不是100%导致的,把页面显示调整成1...转载 2018-03-26 20:48:07 · 25050 阅读 · 0 评论 -
selenium3之selenium-server-standalone-3.8.1.jar启动
查看安装的selenium版本下载对应版本的selenium server下载地址:http://selenium-release.storage.googleapis.com/index.html需要先安装JDK(自行百度安装),启动selenium server(如果打不开,查看是否端口被占 用:netstat -aon|findstr 4444):浏览器地址栏输入: localhost:44...原创 2018-03-26 22:33:27 · 11605 阅读 · 1 评论 -
Selenium+python+API分类总结
Selenium+python+API分类总结http://selenium-python.readthedocs.org/index.html分类方法方法描述客户端操作__init__(self, host, port, browserStartCommand, browserURL)构造函数。host:selenium server的ip;port:elenium server的port,默认...转载 2018-03-27 20:38:22 · 861 阅读 · 0 评论 -
基于Excel参数化你的Selenium2测试
前言今天我们就如何使用xlrd模块来进行python selenium2 + excel自动化测试过程中的参数化进行演示说明,以解决大家在自动化测试实践过程中参数化的疑问。环境安装xlrd是python用于读取excel的第三方扩展包,因此在使用xlrd前,需要使用以下命令来安装xlrd。pip install xlrdxlrd基本用法导入扩展包import xlrd打开excel文件excel ...转载 2018-04-26 21:42:30 · 513 阅读 · 0 评论 -
自动化测试Selenium最新面试题和对应答案!
问题1:Selenium是什么,流行的版本有哪些?Selenium是基于Web的最流行的UI自动化测试工具。它提供了一组支持多种平台的公开API(例如Linux,Windows,Mac OS X等)。此外,像Google Chrome,Mozilla Firefox,Internet Explorer和Safari等所有现代浏览器都可以用来运行Selenium测试。它也涵盖了Android平台,其...转载 2018-05-21 20:34:18 · 10286 阅读 · 1 评论 -
Scrapy框架的使用之Scrapy对接Selenium
Scrapy抓取页面的方式和requests库类似,都是直接模拟HTTP请求,而Scrapy也不能抓取JavaScript动态渲染的页面。抓取JavaScript渲染的页面有两种方式。一种是分析Ajax请求,找到其对应的接口抓取,Scrapy同样可以用此种方式抓取。另一种是直接用Selenium或Splash模拟浏览器进行抓取,我们不需要关心页面后台发生的请求,也不需要分析渲染过程,只需要关心页面...转载 2018-05-16 20:48:23 · 33894 阅读 · 15 评论 -
21条自动化测试过程中遭遇的问题及解决思路
记录自动化中遇到的一些错误及解决思路,会持续更新(根据个人情况不同,错误解决方法不同) 1、找不到元素,脚本报“NoSuchElementException:Unable to find element”,或者"定位到了,不能操作,点击无效" 1) 首先查看自己的“属性值”是否写正确 2) 元素的标签不唯一,默认找到第一个 3)向上查看,元素是否在frame或iframe框架中 4) 查看...转载 2018-06-09 16:23:24 · 12147 阅读 · 0 评论 -
用selenium工具做软件自动化测试的面试题及答案
1、selenium中如何判断元素是否存在?答:isElementPresent 2、selenium中hidden或者是display = none的元素是否可以定位到?答:不可以定位到 3、selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?答:(1)添加元素智能等待时间:driver.implicitly_wait(30)(2)t...转载 2018-10-30 20:32:18 · 9579 阅读 · 1 评论 -
Selenium3源码之初识篇
前提本系列是对Selenium3的Python3版本的源码进行解读分析,所以你应该需要以下准备:安装Python3,请自行去下载安装或参照公众号(开源优测)中Python3系列中的文章学习怎么安装Python3使用以下命令安装最新的Selenium3pip install selenium -U安装结果如下图:selenium安装成功后你可以在Python的安装目录的lib/site-packag...转载 2018-03-10 09:09:47 · 2008 阅读 · 0 评论 -
Firefox创建firefoxprofile
我们自动化测试的时候,有时不需要图片加载出来,提高浏览器加载速度,从而提高脚本的执行速度。另外在一些网络比较差的环境下,禁用css、图片等加载可以提高访问速度方法: 1、创建自己的firefoxprofile关闭所有Filefox浏览窗口—》运行Firefox Manager,点击windows“开始”-->“运行”,然后在输入框输入firefox.exe -Pr原创 2018-02-07 15:22:26 · 3926 阅读 · 0 评论 -
python3 selenium web自动化测试之excel参数化
简单来说,就是不把测试的数据(或者说用例的参数)直接写在代码里,而是写在excel中,代码从excel表格中读取出来,做到数据分离。简单举个例子,上代码:#coding=utf-8from selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.原创 2017-09-06 21:12:25 · 3801 阅读 · 1 评论 -
python3 selenium之火狐Firefox浏览器加载浏览器配置
本博客所有selenium环境都是win 7环境,mac的环境暂不研究!小编比较穷,无力购买mac!等小编有钱了,再说吧。。。童鞋们在跑selenium自动化时,发现打开的firefox没有firebug插件图标有木有??是不是感到不方便啊,呵呵。。。小编,告诉你加载浏览器配置文件后,就可以啦,就可以方便童鞋们定位啦!!!话说,浏览器配置文件在哪里呢?看,看图:根据你自己的电脑原创 2017-09-06 21:27:19 · 3579 阅读 · 0 评论 -
python selenium查找网页内容
# coding=utf-8from selenium import webdriverimport timeimport requestsfrom bs4 import BeautifulSoup as bsdriver = webdriver.Firefox()url = "http://china.huanqiu.com/article/2016-07/9132061.html?原创 2017-09-06 21:58:40 · 2626 阅读 · 0 评论 -
selenium知识点小结
环境:Python:3.6.1selenium:3.4.3Firefox:54.0.1geckodriver:0.15.0chrome:59.0.3chromedriver:v3.1自动化测试基础1、软件测试分类根据项目流程:单元测试(编码)、集成测试(设计)、系统测试(需求)、验收测试根据代码是否可见:白盒测试、黑盒测试、灰盒测试功能测试:原创 2017-09-17 17:49:44 · 1177 阅读 · 0 评论 -
实践selenium自动化时先要弄清的几件事
最近在招聘,很多同学的简历都有自动化测试,基本都有selenium。但很少有人真正弄清selenium。一个是selenium的提供了很多组件,让人容易上手,然后很多人就没有然后了。二是selenium的更新伴随着工具的合并,很多人压根没高清自己用的是selenium RC 还是 webdriver。根据最近面试的情况,把很多同学在实践selenium的时候没弄清的问题总结了一下。详述如下:转载 2017-10-31 22:59:29 · 499 阅读 · 0 评论 -
selenium使用Xpath+CSS+JavaScript+jQuery的定位方法(专治各种定位不准并发症)
【第一部分】开篇:先认识Xpath的4种定位方法跟你说,你总是靠那个firebug,chrome的F12啥的右击复制xpath绝对总有一天踩着地雷炸的你死活定位不到,这个时候就需要自己学会动手写xpath,人脑总比电脑聪明,开始把xpath语法给我学起来!第1种方法:通过绝对路径做定位(相信大家不会使用这种方式)By.xpath("html/body转载 2017-10-26 21:23:00 · 1598 阅读 · 0 评论 -
实践selenium自动化时先要弄清的几件事
最近在招聘,很多同学的简历都有自动化测试,基本都有selenium。但很少有人真正弄清selenium。一个是selenium的提供了很多组件,让人容易上手,然后很多人就没有然后了。二是selenium的更新伴随着工具的合并,很多人压根没高清自己用的是selenium RC 还是 webdriver。根据最近面试的情况,把很多同学在实践selenium的时候没弄清的问题总结了一下。详述如下:转载 2017-11-29 21:08:53 · 421 阅读 · 0 评论 -
记Selenium HTMLTestRunner 无法生成测试报告的总结
http://blog.youkuaiyun.com/xie_0723/article/details/50825310记Selenium HTMLTestRunner 无法生成测试报告的总结原创 2017-11-22 18:10:32 · 568 阅读 · 0 评论 -
python selenium - 利用excel实现参数化
前言在进行软件测试或设计自动化测试框架时,一个比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xlrd、xlwt开源包来读写excel。环境安装首先在命令行下安装xlrd、xlwtpip install xlrdpip install xlwt转载 2017-12-03 19:33:35 · 1394 阅读 · 0 评论 -
Python Selenium设计模式-POM
前言本文就python selenium自动化测试实践中所需要的POM设计模式进行分享,以便大家在实践中对POM的特点、应用场景和核心思想有一定的理解和掌握。为什么要用POM基于python selenium2开始UI级自动化测试并不是多么艰巨的任务。**只需要定位到元素,执行对应的操作即可。**下面我们看一下这个简单的脚本实现百度搜索。from selenium im转载 2017-12-03 19:42:32 · 2550 阅读 · 0 评论 -
Python多线程Selenium跨浏览器测试
前言在web测试中,不可避免的一个测试就是浏览器兼容性测试,在没有自动化测试前,我们总是苦逼的在一台或多台机器上安装N种浏览器,然后手工在不同的浏览器上验证主业务流程和关键功能模块功能,以检测不同浏览器或不同版本浏览器上,我们的web应用是否可以正常工作。下面我们看看怎么利用python selenium进行自动化的跨浏览器测试。什么是跨浏览器测试跨浏览转载 2017-12-03 20:23:00 · 814 阅读 · 0 评论 -
selenium使用Xpath+CSS+JavaScript+jQuery的定位方法 - 专治各种定位不准并发症
跟你说,你总是靠那个firebug,chrome的F12啥的右击复制xpath绝对总有一天踩着地雷炸的你死活定位不到,这个时候就需要自己学会动手写xpath,人脑总比电脑聪明,开始把xpath语法给我学起来!第1种方法:通过绝对路径做定位(相信大家不会使用这种方式)By.xpath("html/body/div/form/input")By.xpath("//input")第2种方法:通过元素索引转载 2018-01-18 16:42:43 · 381 阅读 · 0 评论 -
selenium知识点小结
环境:Python:3.6.1selenium:3.4.3Firefox:54.0.1geckodriver:0.15.0chrome:59.0.3chromedriver:v3.1自动化测试基础1、软件测试分类根据项目流程:单元测试(编码)、集成测试(设计)、系统测试(需求)、验收测试转载 2018-01-20 14:24:08 · 561 阅读 · 0 评论 -
selenium3 IE11 打不开网页,提示Browser zoom level was set to 94%. It should be set to 100%错误
环境:win10 商业版python: 3.5.4selenium: 3.8.1IE 11问题: 启动IE11后打不开百度页面,如图IIDLE会报错:说浏览器缩放有问题,需要设置为100%很简单,我们按照提示Browser zoom level was set to 94%. It should be set to 100%. 把浏览器的页面缩放比例设置为100原创 2018-02-06 10:57:03 · 3909 阅读 · 0 评论 -
xpath中normalize-space的用法
下面这个菜单中,要点击“货运表现”,我们来看一下xpath,菜单中的所有项的id都是“vertab”,所以不能用id来定位,那么先用文本的xpath试试//a[text()='货运表现']发现定位不了,因为文本“货运表现”的前后有空格和换行,那么用包含文本的xpath试试//a[contains(text(),'货运表现')]但是这个菜单中还有个“非货运表现”,文本也包...转载 2019-04-21 17:44:35 · 11554 阅读 · 1 评论