一、学习selenium首先安装其所用的插件或者jar包等。seleniumIDE(Firefox的插件)、FireBug、junit-4.10.jar、selenium-server-standalone-2.39.0.jar(selenium1)、selenium-java-2.39.0.zip(selenium2使用的时候一定要解压,java只识别jar包)、apache-ant-1.9.3-bin.tar.gz(安装时解压,配置环境变量)
二、selenium1工作原理
* selenium服务器,它负责启动或关闭浏览器;解释和运行从测试程序中传过来的selenium命令;可以扮演HTTP代理的角色;截获和验证在浏览器和被测试的应用程序之间传递的HTTP消息
1.RC server在服务端启动浏览器并将Core注入到浏览器中(为了解决浏览器的同源策略)
2.我们的测试脚本调用ClientAPI,Client将操作转化成标准的selenese语句发送给RC Server。
3. Selenium Core 解释selenese语句,通过js的方式操作浏览器
* 客户端文件提供了各种编程语言和SeleniumRC服务器之间的接口
三、selenium1使用
1、创建工程后,一定要AddExernalJAR.包括:junit-4.10.jar、selenium-server-standalone-2.39.0.jar(selenium1)
2、启动本地的selenium-server-standalone-2.39.0.jar服务器
3、编写测试脚本(或录制java测试脚本)
private Selenium selenium;
@Before
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://book.theautomatedtester.co.uk/");
selenium.start();
@After
public void tearDown() throws Exception {
selenium.stop();
}
四、selenium2工作原理
Selenium2提供了一套友好的API,与Selenium1相比较,Selenium2的API更容易理解和使用,其可读性和可维护性也大大提高。Selenium2完全是一套类库,不依赖其他程序。
1.WebDriver启动目标浏览器,并绑定到指定端口。该启动的浏览器实例,做为webdriver的remoteserver。
2.Client端通过CommandExcuter发送HTTPRequest给remoteserver的侦听端口(通信协议:the webriver wire protocol)
3.Remote server需要依赖原生的浏览器组件(如:IEDriver.dll,chromedriver.exe),来转化转化浏览器的native调用。
五、selenium2的使用
录制测试脚本或者编写测试脚本...
六、selenium2常用方法见附件