
selenium
文章平均质量分 63
MTbaby
假使我又见你,隔了悠长的岁月,我如何致意,以沉默,以眼泪?
展开
-
谷歌Xpath-helper插件安装及使用
首先到网盘下载Xpath-helper插件:Xpath-helper插件网盘下载地址提取码: 4wk6然后下载将xpath-helper.crx文件的后缀改为xpath-helper.zip,拖入谷歌浏览器的扩展程序中。扩展程序在谷歌浏览器右上角->点击三个点->更多工具->扩展程序重启谷歌浏览器(页面也需要重启),按快捷键Ctrl+Shift+X启动Xpath-helper(注意是大写X),如果使用快捷键没反应有可能是快捷键冲突,需要手动更改。打开和关闭x转载 2021-03-17 10:29:53 · 4955 阅读 · 1 评论 -
selenium 定位一组元素
前言 前面的几篇都是讲如何定位一个元素,有时候一个页面上有多个对象需要操作,如果一个个 去定位的话,比较繁琐,这时候就可以定位一组对象。 webdriver 提供了定位一组元素的方法,跟前面八种定位方式其实一样,只是前面是单数, 这里是复数形式:find_elements 本篇拿百度搜索作为案例,从搜索结果中随机选择一条搜索结果,然后点击查看。一、定位搜索结果1.在百度搜索框输入关键字“原创 2017-08-25 10:07:40 · 1910 阅读 · 0 评论 -
selenium 爬页面源码(page_source )
前言 有时候通过元素的属性的查找页面上的某个元素,可能不太好找,这时候可以从源码中爬出想要的信息。selenium 的 page_source 方法可以获取到页面源码。1.selenium 的 page_source 方法可以直接返回页面源码 2.重新赋值后打印出来这里可以使用正则匹配到你想要的数据,比如我这里想要所有的链接,原创 2017-08-25 14:49:48 · 29233 阅读 · 4 评论 -
selenium 多窗口、句柄处理
前言 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口了。获取窗口的唯一标识用句柄表示,所以只需要切换句柄,我们就能在多个页面上灵活自如的操作了。本篇以打开百度新闻页面搜索按钮上的链接页面为例,依次打开每个按钮,并检验测试结果。用脚本批量操作,可以减少重复劳动,重复的事情让脚本去执行吧!一.定位一组元素1.打开百度首页面:http://www.baidu.c原创 2017-08-24 11:52:32 · 6018 阅读 · 0 评论 -
selenium之unittest的简单用法(一)
一、unittest简介熟悉 java 的应该都清楚常见的单元测试框架 Junit 和 TestNG,这个招聘的需求上也是经常见到的。python 里面也有单元测试框架-unittest,相当于是一个python 版的 junit。python 里面的单元测试框架除了 unittest,还有一个 pytest 框架,这个用的比较少,后面有空再继续分享。用法:先导入 unittest用 help原创 2017-08-28 15:53:04 · 3826 阅读 · 0 评论 -
selenium之unittest批量执行测试用例、生成html报告
一、unittest 批量执行我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到 unittet 里面的 discover 方法来加载用例了。加载用例后,用 unittest 里面的 TextTestRunner 这里类的 run 方法去一次执行多个脚本的用例。二、新建测试项目1.打开pycharm,左上角File>New Projetc>Pure Py原创 2017-08-29 10:25:20 · 3958 阅读 · 0 评论 -
selenium之unittest的简单用法(二)
一、unittest 的执行顺序很多初学者在使用 unittest 框架时候,不清楚用例的执行顺序到底是怎样的。 对测试类里面的类和方法分不清楚,不知道什么时候执行,什么时候不执行。 本篇通过最简单案例详细讲解 unittest 执行顺序。二、案例分析1.先定义一个测试类,里面写几个简单的 case#-*- coding:utf-8 -*- import unittest from se原创 2017-08-28 15:58:04 · 1400 阅读 · 0 评论 -
selenium之unittest 装饰器
还记不记得我们selenium之unittest的简单用法(二)中的unittest执行顺序。 unittest 里面 setUp 可以在每次执行用例前执行,这样有效的减少了 代码量,但是有个弊端,比如打开浏览器操作,每次执行用例时候都会重新打开,这样就会浪费很多时间。 于是就想是不是可以只打开一次浏览器,执行完用例再关闭呢?这就需要用到装饰器(@classmethod)来解决了。一、原创 2017-08-29 14:57:46 · 1269 阅读 · 0 评论 -
Python 多线程 Selenium 跨浏览器测试
前言 在 web 测试中,不可避免的一个测试就是浏览器兼容性测试,在没有自动 化测试前,我们总是苦逼的在一台或多台机器上安装 N 种浏览器,然后手工在不同的浏览器上验证主业务流程和关键功能模块功能,以检测不同浏览器或不同版本浏览器上,我们的 web 应用是否可以正常工作。下面我们看看怎么利用 python selenium 进行自动化的跨浏览器测试。一、什么是跨浏览器测试跨浏览器测试是功能测试的原创 2017-08-30 11:53:58 · 2120 阅读 · 0 评论 -
基于 Excel 参数化你的 Selenium2 测试代码
在测试过程中直接读取本地excl文件中的数据,一方面,将数据存放本地进行测试非常方便,不需要在代码中一个一个传参;另一方面,简化了代码,是你的测试代码看起来非常简洁易懂。今天我们就如何使用 xlrd 模块来进行 python selenium2 + excel 自动化测试过程中的参数化进行演示说明,以解决大家在自动化测试实践过程中参数化的疑问。一、安装xlrd进入Python安装目录下的site-p原创 2017-08-31 09:39:01 · 1518 阅读 · 0 评论 -
selenium实现excel文件数据的读、写
在进行软件测试或设计自动化测试框架时,一个不可避免的过程就是: 参数 化,在利用 python 进行自动化测试开发时,通常会使用 excel 来做数据管 理,利用 xlrd、xlwt 开源包来读写 excel。一、环境安装1.安装xlrdpip install xlrd2.安装xlwtpip install xlwt二、读取excel文件数据示例让我们先看一原创 2017-09-01 12:48:16 · 8253 阅读 · 1 评论 -
selenium 鼠标悬停事件
1.鼠标不仅仅可以点击(click),鼠标还有其它的操作,如:鼠标悬停在某个元素上,鼠标右击,鼠标按住某个按钮拖动; 2.鼠标事件需要先导入模块: from selenium.webdriver.common.action_chains import ActionChainsperform() 执行所有 ActionChains 中的行为move_to_element() 鼠标悬停3.这里以百度原创 2017-08-22 15:50:23 · 16693 阅读 · 0 评论 -
selenium iframe元素定位
不知道大家有没有这样一个经历,就是在定位元素时,怎么都定位不到,但是id等标签并没有错,真是让人摸不着头脑。其实,这就是iframe在作怪咯!本篇详细介绍 iframe 相关的切换 以 http://mail.163.com/ 的登录页面为案例,详细介绍 switch_to_frame 使用方法。一、frame 和 和 iframe 区别frame 与 iframe 两者可以实现的功能基本相同,原创 2017-08-25 11:15:37 · 5500 阅读 · 0 评论 -
Selenium Webdriver元素定位方法
在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素。其中By类的常用定位方式共八种,现分别介绍如下。假设测试的页面源码为csdn的登录页面。 1.name函数find_element_by_name()举例: 假设我们要测试的页面源码为csdn的登录页面,如下:<input id="userna原创 2017-06-14 14:12:07 · 2426 阅读 · 0 评论 -
selenium+Python环境搭建
selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始首选selenium ,相因为它相比QTP有诸多有点:免费,也不用再为破解QTP而大伤脑筋小巧,对于不同的语言它只是一个包而已,而QTP需要下载安装1个多G 的程序。这也是最重要的一点,不管你以前更熟悉C、 java、ruby、python、或都是C# ,你都可以通过selenium完成自动化测试,而QTP只支持VBS原创 2017-06-06 17:43:45 · 1038 阅读 · 0 评论 -
selenium IDE 的安装配置
selenium IDE简介Selenium的IDE(集成开发环境)是一个易于使用的Firefox插件,用于开发Selenium测试案例。它提供了一个图形用户界面,用于记录使用Firefox浏览器,用来学习和使用Selenium用户操作,但它只能用于只用Firefox浏览器不支持其它浏览器。然而,所记录的脚本可以被转换成由Selenium 支持多种编程语言和脚本可以在各种其它的浏览器,以及被执行。s原创 2017-06-19 16:29:39 · 970 阅读 · 0 评论 -
selenium IDE 测试示例
涉及使用IDE Selenium创建测试,如下面的步骤记录和测试添加命令保存测试记录保存测试程序执行测试记录在测试中记录和添加命令为了演示目的,我们将利用www.baidu.com,了解selenium的特点。步骤 1 : 启动Firefox浏览器,然后导航到该网站 - http://www.baidu.com/步骤 2 : 从工具菜单中打开Selenium IDE,按下录制按钮-即在右上原创 2017-06-19 17:54:48 · 1464 阅读 · 0 评论 -
selenium开发环境配置
为了开发Selenium RC或webdriver脚本,用户必须确保他们有初始配置完成。有很多关联建立环境的步骤。这里将详细介绍selenium环境的安装。下载并安装Java下载并配置Eclipse配置Firebug和FirePath配置Selenium RC配置Selenium的webdriver因为前面已经介绍过java的安装和eclipse的安装下载,所以这里不再赘述,把原创 2017-06-21 14:40:11 · 1047 阅读 · 0 评论 -
selenium python中关于iframe的定位
在定位的时候发现有些元素定位不到,最后发现有iframe。如果ifame 有name或id的话,直接使用switch_to_frame(“name值”)或switch_to_frame(“id值”),这是最理想的方法,也是最简单好用的方法。举例: 要定位到iframe,再定位其他元素。driver.switch_to_frame("_DialogFrame_0")问题又来了,iframe我们进来原创 2017-06-29 18:04:17 · 1155 阅读 · 0 评论 -
启动selenium服务器
1、安装和配置好eclipse之后,selenium的jar包也导入之后,就要启动Selenium服务器了,这样才能开始测试。 2、下载好selenium-server-standalone-2.44.0.jar,我的是这个版本,然后用下面的命令启动Selenium服务器:Java -jar (selenium服务器文件路径).jar 如下图所示: 3、这样就可以愉快的写测试代码啦~~~ 4原创 2017-06-19 09:50:48 · 1580 阅读 · 0 评论 -
selenium 时间日期控件的处理
今天在写自动化测试脚本的时候,出现了一个时间选项框,类似于这样: 这可难倒我了,难道要我去研究怎么去控制时间吗?额~~~估计很难。 网上查了一下,还真是有些人也遇到了这个问题。当然也可能遇到难点的,像这样: 当然,也不排除会遇到变态的,像这样: 呵呵,真要一个个想着怎么去选择,简直是非人类干的事!那么该怎么办?其实很简单,我们不去搞时间日期空间,我们把它当成一个普通的input框处理就好了原创 2017-07-04 15:01:07 · 3434 阅读 · 1 评论 -
selenium上传本地文件
文件上传操作也比较常见功能之一,上传功能没有用到新有方法或函数,关键是思路。上传过程一般要打开一个本地窗口,从窗口选择本地文件添加。所以,一般会卡在如何操作本地窗口添加上传文件。其实,在 selenium webdriver 没我们想的那么复杂;只要定位上传按钮,通 send_keys 添加本地文件路径就可以了。绝对路径和相对路径都可以,关键是上传的文件存在。selenium处理本地文件上传的方法原创 2017-07-04 15:25:48 · 2146 阅读 · 0 评论 -
selenium处理select标签的下拉框
1.div下拉框的处理div下拉框与其他元素一样,没有啥特殊的,只需要用xpath来定位即可。 如:现在我们来通过脚本选择下拉列表里的 $10.69#先定位到下拉框m=driver.find_element_by_id("ShippingMethod")#再点击下拉框下的选项m.find_element_by_xpath("//option[@value='10.69']").click()原创 2017-07-04 16:42:36 · 3146 阅读 · 0 评论 -
selenium模拟登陆
上一篇我已经介绍了selenium+python环境搭建,现在我们来举个例子,模拟网页登录。该代码只能模拟不需要验证码的网页登录哦!!准备工作:1.下载火狐浏览器,要求版本53.0以下;(不支持最新版本)这里是所有版本的下载地址。 http://ftp.mozilla.org/pub/firefox/releases/2.下载geckodriver.exe。http://download.csdn原创 2017-06-06 18:11:22 · 5395 阅读 · 0 评论 -
selenium webdriver 模拟优快云发表博客
刚学了selenium,心血来潮,想练练手,所以模拟优快云发表一篇博客。这里遇到了很多的问题,比如元素定位不到啊,窗口的跳转的处理啊,还有各种坑。总之,想要学好selenium,还真是要花一些心思,因为你会发现,大坑无处不在无处不有。这段小程序,我模拟的是通过MarkDown编辑器发表的博客,如果大家不喜欢用MarkDown编辑器的话,可以使用默认的编辑器来发表,只需把定位元素那段修改一下即可。#原创 2017-06-16 10:07:28 · 585 阅读 · 0 评论