来源:<selenium webdriver基于Python源码案例> 一.打开网页①第一步:从selenium里面导入webdriver模块②打开浏览器(Ie和Chrome对应下面的)③打开百度网址 二.设置休眠 ①.由于打开百度网址后,页面加载需要几秒钟,所以最好等到页面加载完成后再继续下一步操作②.导入time模块,time模块是Python自带的,所以无需下载③.设置等待时间,单位是秒(s),时间值可以是小数也可以是整数 三.页面刷新①.有时候页面操作后,数据可能没及时同步,需要重新刷…
1. 其他操作元素的方法 之前我们对web元素做的操作主要是:选择元素,然后点击元素或者输入字符串. 还有没有其他的操作了呢?有. 比如:比如鼠标右键点击.双击.移动鼠标到某个元素.鼠标拖拽等. 这些操作,可以通过Selenium提供的ActionChains类来实现. ActionChains类里面提供了一些特殊的动作的模拟,我们可以通过 ActionChains 类的代码查看到,如下所示: 我们以移动鼠标到某个元素为例. 百度首页的右上角,有个更多产品选项,如下图所示: 如果我们把鼠标放在上…
还是使用js来移动 首先要定位到这个元素 倾向于使用js来定位元素,输入下面的脚本,按下回车键,即可在调试页面看到对应的div块$("div.table-responsive") 滚动方法使用scrollLeft()$("div.table-responsive").scrollLeft(1000) 应用到java selenium中 为了避免输入数字可以这样写 ((JavascriptExecutor) driver).executeScript("$(…
Web 开发人员通常需要利用JavaScript弹出对话框来给用户一些信息提示, 包括以下几种类型 阅读目录 对话框类型 1.  警告框: 用于提示用户相关信息的验证结果, 错误或警告等 2. 提示框: 用于提示用户在当前对话框中输入数据,一般需要用户单击取消或者确认按钮 3. 确认框: 用于提示用户确认或者取消某个操作,一般需要用户单击取消或者确认按钮 测试页面 用如下页面为例进行讲解, 包括了警告框,提示框,确认框 http://sislands.com/coin70/week1/dialo…
1.JQuery用法 A:$(function(){code...});表示当页面载入完毕后执行 B:获取元素方法:根据class名称 $('.classname'),根据ID名称 $('#IDname'),根据标签名称$('"input") 还可以根据div tr 等html表都可以.如果想要取得一类标签中的一部分,可以根据其属性来取的,比如取得 input 标签中 name="example"的标签,$("input[name=example]&quo…
原文:JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法 jquery-easyui是一个基于jquery的图形界面插件,利用easyui可以创建很多好看的网页界面效果,easyui的相关地址是:http://jquery-easyui.wikidot.com/: easyui的中文文档地址是:http://www.easyui.net/,本人也利用easeyUI在做一些页面效果.由于我很喜欢那种弹出的对话框界面,因此在界面中应用了Dialog类来处理一些确认…
注:本篇文章转载 http://www.cnblogs.com/mengyu/p/6952774.html 在完成某些操作时会弹出对话框来提示,主要分为"警告消息框","确认消息框","提示消息对话"三种类型的对话框. 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作. 2.确认消息框(confirm) 确认消息框向用…
九种js弹出对话框的方法总结,需要的朋友可以参考一下 [1.最基本的js弹出对话框窗口代码] 这是最基本的js弹出对话框,其实代码就几句非常简单: <script LANGUAGE="javascript"> <!-- window.open ("page.html") --> </script> 因为这是一段javascripts代码,所以它们应该放在<script LANGUAGE="javascript&qu…
原文:http://www.cnblogs.com/xiaofengfeng/archive/2012/10/20/2732784.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   <html xmlns="http://www.w3…
元素定位及其他操作 0.常见的识别元素的方法是什么? driver.find_element_by_id() driver.find_element_by_name() driver.find_element_by_class_name() driver.find_element_by_tag_name() driver.find_element_by_link_text() driver.find_element_by_partial_link_text() driver.find_eleme…
常见定位对象元素的方法 在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素.其中By类的常用定位方式共八种,现分别介绍如下: By.id() id页面元素的id一般是唯一的,使用id定位效率较高,并且定位精确 使用方法如下: public class SearchButtonById { public static void main(String[] args){ WebDriver driv…
前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 一.简单操作 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字   二.subm…
取元素的text,属性get_attribute,标签名tag_name 操作元素:send_keys输入,click点击,submit提交,clear清除输入 状态判断:is_display,is_enabled,is_selected   #coding=utf-8 #元素的操作 from selenium import webdriver import time driver = webdriver.Firefox() driver.get("https://cn.bing.com&quo…
Selenium-Webdriver 提供了强大的元素定位方法,支持以下三种方法. 单个对象的定位方法 多个对象的定位方法 层级定位 定位单个元素在定位单个元素时,selenium-webdriver 提示了如下一些方法对元素进行定位.下面这些定位方式中,优先使用id.name.classname,对于网上的链接元素,推荐使用linkText 定位方式,对于不好定位的元素,考虑使用火狐的插件去辅助定位(xpath). By.className(className)) //对于元素的属性包含cla…
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <!-- 元素…
1.定位方式 1.id driver.find_element_by_id('username').send_keys('byhy') 2.name driver.find_element_by_name('username').send_keys('byhy') 3.class_name driver.find_element_by_class_name('form-control').send_keys('byhy') 4.tag_name driver.find_elements_by_t…
在使用jquery ui中的dialog弹出窗口的时候遇到一个问题,就是页面弹出窗口关闭后希望表单元素能回到初始状态 例如文本框输入内容后关闭dialog后里面的内容清除,使用了destroy方法也不行,destroy销毁的jquery ui给你生成dialog时候的那些html, 不会销毁元素本身,要销毁元素本身要用remove 下面介绍已一种解决方法方法,使用clone 然后在append var dialogParent = $('#userCreate').parent(); //克隆弹…
jquery的"筛选选择器", 都是用冒号开头的, 即, 冒号选择器就是 筛选选择器.如: :first, :last, :eq(index), :first-child,...等等, 其中, 表单中的元素选择器就是直接用冒号筛选器就好了, 前面不必用input. 还可以使用表单对象属性选择器. 学习进步 的方法就是, 反复的, 不断重复的, 螺旋式的熟悉, 温故而知新. 不断熟练, 然后生出技巧, 和高超技艺, 然后成为高手的. 每一轮重复都会有不同的质变. 技艺关键在于熟练. vi…
alert.confirm.prompt这样的js对话框在selenium1 时代处理起来比价麻烦,常常要用autoit来帮助处理.而现在webdriver对这些弹出框做了专门的处理,使用selenium2处理对话框就变得十分方便简洁. alert.confirm.prompt 不是 JavaScript 核心的函数. alert 是 BOM 中的成员函数,具体说是 window.alert. 所以说,alert对话框显示在最前,并且禁止了浏览器页面其他的操作.废话不多说,看看怎么用webdri…
昨天使用selenium做自动化测试,发现部分页面会弹出alert对话框,找了写资料,大概的意思就是要给弹出的对话框做出相应,不然,后续的处理会失败. _driver.SwitchTo().Alert() 这样就可以把当前的handle转到到弹出框,可以进行下一步的处理,如accept,dimsiss ,text等属性,就可以弹出框做处理了. 把代码修改,测试了一下,代码可以执行通过了,欢天喜地的回家了,今天来了之后发现,把测试用例整体跑一下,发现很多testcase 发现出错了.出错了开始找问…
核心代码: columns: [ { checkbox:true //第一列显示复选框 }, ... { field: 'fail_num', title: '失败数' }, { field: 'operate', title: '操作', width: 120, align: 'center', valign: 'middle', formatter: actionFormatter, }, ], }); //操作栏的格式化,value代表当前单元格中的值,row代表当前行数据,index表示…
要把ChromeDriver放到代码中的文件夹中c://*******Application public static WebDriver WebDriverRun(WebDriver driver){//            System.setProperty(Dom4jXml.getValue("chromeDriverName"), Dom4jXml.getValue("chromeDriverPath"));            // 设置 chro…
  方法1: FM:POPUP_TO_CONFIRM(标准对话弹出消息) 有三个button:YES-NO-CANL,可进行对应的逻辑推断 可设定标题,描写叙述问题,不方便对文本进行换行等排版,不能改变弹出框大小.   方法2: FM:POPUP_CONTINUE_YES_NO 有两个button:J-N(YES-NO),可进行对应的逻辑推断 可设定标题,最大仅仅能小时两行文本,不方便对两行以上文本进行排版,不能改变弹出框大小.   方法3: 以内部数据,在文本编辑器中按行进行输出 FM:ADA…
1.driver.find_element_by_id('su') 定位到元素的id一般id是唯一的,可以精确定位到元素 2.driver.find_element_by_name() 通过元素的name来定位元素 3.driver.find_element_by_class_name() 通过元素的class属性来定位 4.driver.find_element_by_link_text() 通过链接的文本来定位元素 5.driver.find_element_by_partial_link_…
1.利用ID定位元素(能直接通过ID来定位的元素比较少) # coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()url = ("http://www.baidu.com")driver.get(url)try:    driver.find_element_by_id("kw")    print('test pass: ID fo…
IE兼容模式  会显示 IE的开发人员工具 极速模式 才会显示谷歌的那种方式 IE调试模式不怎么习惯,如下图 正常调试模式如下图…
上来先来一个图: 在使用webdriver操作Firefox浏览器的时候,一路顺畅.可是在最后关闭浏览器后,出现了如上面图示的警告!这个警告很早就出现了,因为也不影响测试结果,也就一直没理. 后来新搭建了一个windows虚拟机,也遇到了同样的问题.但是这次出现警告后,会阻塞住webdriver继续执行.一直到手动关闭了这个警告框才能继续执行.不得不处理一下. 我处理的办法是:直接把Plugin Container for Firefox.exe 删除或是重命名.让他直接不用启动,自然就不会崩溃…
总是弹出下面的框框,每次输入svn账号密码,还是不行. 于是上网查了半天,需要安装和配置SlikSvn.于是就下载安装了. 完了还是不行,就尝试着配置. 上面和下面的加上,svn.exe的地址. 再次尝试,可以了.…
解决办法如下: Response.Write("<script>alert('想在对话框中显示的内容');window.navigate(‘要转到的页面的URL’)</script>"); 或者: Response.Write("<script>alert(想在弹框中显示的内容');window.location.href='要转到的页面的URL';</script>");…
protected void ASPxButton2_Click(object sender, EventArgs e) { //Response.Write("<script>alert('删除成功!')</script>"); WebMessageBox(this.Page, "*******"); } public static void WebMessageBox(System.Web.UI.Page page, string val…