最近一直在学Selenium相关东西,学到webdriver这块,出现报不可见元素异常方法异常,后来网上找了好多相关资料都没搞定,也没看明白,最后发现是xpath中写了calss属性有问题.现在把学习到的方法和实际解决的方法总结一下,留个记号.  1.  关于存在不可见属性的元素,对元素操作时,出现报如下异常的情况及处理办法: Exception in thread "main" org.openqa.selenium.ElementNotVisibleException: Eleme…
操作日期元素 第一种方式直接向输入框输入日期 dateInputBox = self.driver.find_element_by_id("datepicker") dateInputBox.send_keys("11/24/2016") #encoding=utf-8 from selenium import webdriver import unittest, time, traceback from selenium.webdriver.support.ui…
Selenium WebDriver 只是 Python 的一个第三方框架, 和 Djangoweb 开发框架属于一个性质. webdriver 提供了八种元素定位方法,python语言中也有对应的方法, 序号 webdriver元素定位方法 python中对应方法 1 id find_element_by_id() 2 name find_element_by_name() 3 class name find_element_by_class_name() 4 tag name find_el…
WebDriver元素查找方法摘录与总结 整理By:果冻迪迪 selenium-webdriver提供了强大的元素定位方法,支持以下三种方法. • 单个对象的定位方法 • 多个对象的定位方法 • 层级定位 定位单个元素 在定位单个元素时,selenium-webdriver提示了如下一些方法对元素进行定位. By.className(className)) By.cssSelector(selector) By.id(id) By.linkText(linkText) By.name(name)…
webdriver中定位元素,报无法找到元素的问题时,需要查看以下几点: 1 用火狐的firebug插件定位元素,确保这个元素的定位正确: 2 在火狐的firebug插件的,在html页签中输入frame或者iframe去查看这个元素所在的frame或iframe是什么: 写如下语句: WebElement iframe = driver.findElement(By    .xpath("//*[@id='ContentFrame']"));  driver.switchTo().f…
在UI层面的自动化测试开发中,元素的定位与操作是基础,也是经常遇到的困难所在.webdriver提供了8种定位: 1. id定位:find_element_by_id("id值"):id属性是唯一的 1 driver.find_element_by_id("loginName").clear()#用户名输入框的id属性 2 driver.find_element_by_id("loginName").send_keys("admin&q…
元素定位的重要性不言而喻,如果定位不到元素谈何操作元素呢,webdrvier提供了很多种元素定位方法,如ID,Name,xpath,css,tagname等. 例如需要定位如下元素: <input class="input_class" type="text" name="passwd" id="passwd-id" /> By.id: WebElement element = driver.findElement…
今天用ObjectOutputStream和ObjectInputStream进行对象序列化话操作的时候,报了java.io.EOFException异常. 异常代码如下: java.io.EOFException at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2554) at java.io.ObjectInputStream.readObject0(ObjectInputSt…
很多朋友在使用spring+hibernate或mybatis等框架时经常遇到报Transaction rolled back because it has been marked as rollback-only的异常,这个异常是怎么造成的 呢,下面将给大家进行详细的分析.     这是专门写的一个造成该异常的代码: @Transactional public void add(OperateLog entity)throws Exception { // TODO Auto-generate…
前言 问题 学习selenium的同学估计大多数都遇见过一个问题 明明页面已经精准的定位到了元素,但是执行脚本的时候却经常报错没找到元素.其实原因很简单,就是脚本执行的速度很快,而浏览器加载页面的时候由于网速,css渲染,JS等各种原因导致页面加载缓慢,所以当脚本执行到定位一个元素的代码时,页面还未加载出这个元素,进而导致代码报错.那么有没有办法解决这种问题呢?of course,如果解决不了还叫自动化嘛 我们先看下面的一个用例(百度首页输入“linux超”关键词,点击“百度一下”, 在搜索结果…