`
文章列表
【案例】通过反射取得并修改数组的信息:  
本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解。 下面开始正文。 【案例1】通过一个对象获得完整的包名和类名
准备环境 对所有版本的webdriver: Java JDK 5或以上(如果没有安装从oracle 的网站上下载) 源代码(如果没有,导出源代码 ,可参考:selenium webdriver学习(十七) ) 另外,interntetExplorerDriver需要一些额外的组件并且只能构 ...
这里主要是想把selenium的整个项目同步到eclipse的经历分享一下。虽然有时候想想没有必要,因为你下载的包里本身就包含了源代码,但是我就是这样做了。 selenium项目地址: (只读) 方法一、直接使用TortoiseSVN 1、安装TortoiseSVN。下载地址:http://tortoisesvn.net/downloads 2、在eclipse的Workspace目录下直接新建一个文件夹,右击文件夹 -> TortoiseSVN -> Export... ,在打开的弹层"URL of repository:"下面的输入框输入http:// ...
最近想总结一下学习selenium webdriver的情况,于是就想用selenium webdriver里面的方法来实现selenium RC中操作的一些方法。目前封装了一个ActionDriverHelper类,来实现RC中Selenium.java和DefaultSelenium.java中的方法。有一些方法还没有实现,写的方法大多没有经过测试,仅供参考。代码如下: package core; import java.io.File; import java.io.IOException; import java.util.HashSet; import java.util ...
在Ruby中,操作的都是对象,结果也都是对象。 类定义 Ruby中,类的定义要在class...end之间,类名必须以大写字母开始。 若某个类已经被定义过,此时又用相同的类名进行类定义的话,是对原有的类的定义进行追加.   class ClassName def method1 puts 'method1' end end class ClassName def method2 puts 'method2' end  end   对 ...
ruby安装 ruby 安装下载地址:http://rubyforge.org/projects/rubyinstaller   运行ruby 1、使用ruby 打开windows命令提示符窗口,在提示符上输入”Ruby“ 并回车,Ruby解释器就会运行并等候输入。然后可以输入ruby程序,如: puts 'hello world' 然后Ctrl+D,回车就可以看到输出结果。 注:也可以先把程序保存成文件,然后使用ruby运行   2、使用FreeRIDE和SciTE FreeRIDE是一个支持Ruby语言的免费IDE环境。 SciTe用一个开源的Scintilla控件集 ...
Rake Rake简介 Rake和Make及Ant Rake的意思是Ruby Make,一个用ruby开发的代码构建工具。Rake的英文意思是耙子,一种很朴实的劳动工具。真的是很贴切,Rake正是一个功能强大、勤勤恳恳的劳动工具。 Rake会经常跟C/C++领域的make和Java世 ...
这一节主要涉及 selenium webdriver处理Firefox profile的一些知识。   什么是Firefox profile 要了解Firefox profile请访问这里,它详细解绍了Firefox proflie。在Firefox里,如何管理Firefox profile 请访问这里。看完它们,相信你对Firefox profile会有所了解。好了,必备的知识准备完了,让我们来看看selenium webdriver 是怎么操作Firefox profile的吧。   设置profile中的一个preference FirefoxProfile profile = ...
以前在selenium RC 里面有一个getTable方法,是得到一个单元格中的文本。其详细描述如下:   /** Gets the text from a cell of a table. The cellAddress syntax tableLocator.row.column , where row and column start at 0. @param tableCellAddress a cell address, e.g. "foo.1.4" @return the text from the specified cell */ String ...
在selenium webdriver学习(十)------------如何把一个元素拖放到另一个元素里面 的时候,用到了一个Actions类。这一节主要分析一下这个Actions类。 这个actions类,主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作。对于这些操作,使用perform()方法进行执行。 actions类可以完成单一的操作,也可以完成几个操作的组合。   单一的操作 单一的操作是指鼠标和键盘的一个操作。如鼠标左键按下、弹起或输入一个字符串等。 前面涉及到鼠标键盘操作的一些方法,都可以使用actions类中的方法实现,比如:click,se ...
在自动化测试中常常会用到截图功能。最近用了一下selenium-webdriver的截图功能还算不错,可以截取页面全图,不管页面有多长。   下面的代码演示了如何使用webdriver进行截图: import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.se ...
web的自动化测试中,我们经常会遇到这样一种情况:当我们的程序执行时需要页面某个元素,而此时这个元素还未加载完成,这时我们的程序就会报错。怎么办?等待。等待元素出现后再进行对这个元素的操作。在selenium-webdriver中我们用两种方式进行等待:明确的等待和隐性的等待。明确的等待明确的等待是指在代码进行下一步操作之前等待某一个条件的发生。最不好的情况是使用Thread.sleep()去设置一段确认的时间去等待。但为什么说最不好呢?因为一个元素的加载时间有长有短,你在设置sleep的时间之前要自己把握长短,太短容易超时,太长浪费时间。selenium webdriver提供了一些方法帮助 ...

java 泛型学习

    博客分类:
  • java
今天看webdriver代码看到泛型,找到这篇文章补补 http://www.aqee.net/java-generics-quick-tutorial/
Q群里有时候会有人问,selenium  webdriver怎么实现把一个元素拖放到另一个元素里面。这一节总一下元素的拖放。 下面这个页面是一个演示拖放元素的页面,你可以把左右页面中的条目拖放到右边的div框中。 http://koyoz.com/demo/html/drag-drop/drag-drop.html   现在来看看selenium webdriver是怎么实现drag and drop的吧。let‘s go! import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import ...
Global site tag (gtag.js) - Google Analytics