Web自动化测试selenium之JAVA使用介绍篇

      最近想使用selenium进行WEB自动化测试,在网上搜索了许久,没找到有具体的配置,于是结合网上的资料再加上自己的尝试终于搭建好环境。于是,就想整理一篇文章,便于大家交流使用。

      本文是参照官网的步骤进行的但也不完成相同。在这里我要讲的是 java 的环境的搭建。 我是通过MyEclipse10.0来搭建自己的环境的。

 

一、环境准备

  1. JDK;
  2. MyEclipse10.0;
  3. Junit 4 ,因为我使用的 MyEclipse10.0已经集成了Junit 4所以就不需要再安装插件了。需要的朋友可以到 https://github.com/KentBeck/junit/downloads 上进行下载;
  4. Firefox ,我使用的是 Firefox 13.0
  5. selenium IDE, 打开 官网链接 http://seleniumhq.org/download/   里面有Selenium IDE的下载链接,我下载的版本是1.9.0;

  6. Selenium RC ,打开 官网链接 http://seleniumhq.org/download/   点击 previous releases 链接,找到Selenium RC 对应的下载源,下载你需要的版本,我下载的是selenium-remote-control-0.9.2-dist.zip,然后返回到 http://seleniumhq.org/download/   页面,下载 Selenium Server,我下载的是selenium-server-standalone-2.25.0.jar,最后下载针对java语言的Seleniumlient Drivers,我下载的是 selenium-java-2.25.0.zip。

 

二、Selenium IDE

 

      Selenium-IDE是用于selenium测试的一个集成测试工具,他被嵌套在firefox中,作为firefox的一个组件来使用。并且通过它,测试人员可以录制在web界面上的一切操作,并且进行编辑,调试和快速回放,就像用户在操作一样。

 

  • Selenium IDE的安装

      打开 firefox 浏览器,进入官方网址: http://seleniumhq.org/download/ 找到 selenium IDE 的下载链接, firefox 会有提示安装插件,点击安装即可。

 

  • Selenium IDE的使用

     打开 firefox 浏览器,点击“工具”,选择Selenium IDE,弹出如下页面:

    
Web自动化测试selenium之JAVA使用介绍篇
 

 

      点击红色按钮,开始录制脚本。录制完成后,点击红色的按钮,结束录制。

      点击绿色的三角按钮回放录制的脚本。在运行脚本后,你会发现 IDE 表格的颜色发生了变化,运行前,脚本表格为白色,成功运行完毕后,表格为青色。其中还分为深青色和浅青色两种,浅青色表示: 动作成功;而深青色表示:判断正确。

      需要注意的是,Base URL需要填写为你要测试的WEB应用的URL。

      录制完脚本后,将脚本导出出为 junit 4 类型的代码,我这里保存为 LoginTest.java 并复制到项目中。

    
Web自动化测试selenium之JAVA使用介绍篇
 

 

 

三、Selenium RC

 

 

      Selenium RC可以使用高级语言来编写web页面测试脚本,编写的脚本可以运行在任何支持js的浏览器中。Selenium RC包括两部分:Selenium服务器和Selenium客户端程序。

 

  • Selenium服务器。

      能够自动的开启和关闭web浏览器。对于web的请求,它就像一个http代理,SeleniumServer通过向浏览器发出JavaScript调用实现对Html页面的全面追踪,并通过网络把执行结果返回给Selenium客户端 。另外,由于selenium服务器是用JAVA开发的,所以在搭建测试环境的时候,需要安装java的环境。

      我们在环境准备过程中下载的selenium-server-standalone-2.25.0.jar即为服务端程序。

      启动方式如下:

      开始---运行---cmd,打开cmd定位到selenium-server-standalone-2.25.0.jar所在目录,输入:

      java -jar selenium-server-standalone-2.25.0.jar 

      回车,服务就启动了。

      服务启动后默认端口是4444。http://code.google.com/p/selenium/wiki/Grid2 这里讲解了如何启动服务修改默认端口等,在这里我就不说明了,如果需要大家可以到该wiki上查看。

 

  • Selenium客户端程序。

      Selenium客户端一般使用单元测试技术实现,通过判断返回的结果与预期是否一致来决定程序是否运行正确, selenium客户端测试程序可以使用java、php、.net等高级语言来编写。

 

      搭建客户端环境需要引入两个jar包,一个位于我们之前下载的selenium-remote-control-0.9.2-dist.zip压缩包中,是该压缩包中selenium-java-client-driver-0.9.2文件夹内的selenium-java-client-driver.jar,另一个位于 selenium-java-2.25.0.zip压缩包中,是该压缩包中selenium-2.25.0 文件夹内的selenium-java-2.25.0.jar 。需要将这两个jar引入到我们的测试工程中,还需要引入JUnit对应的jar。

      创建 JUnit test case文件,文件名为LoginTest和我们之前 导出的 junit 4 类型的代码名称相同,然后将 之前 导出 的代码复制到新创建的文件中即可。

      代码内容如下:

import com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.regex.Pattern;

public class LoginTest extends SeleneseTestCase {
    @Before
    public void setUp() throws Exception {
        selenium = new DefaultSelenium("localhost", 4444, "*iexplore",
                "http://localhost:8080/portal");
        selenium.start();
    }

    @Test
    public void testLogin() throws Exception {
        selenium.open("/portal/");
        selenium.type("id=name", "13900000000");
        selenium.type("id=password", "11");
        selenium.type("id=rs", "1377");
        selenium.click("id=btn1");
        selenium.waitForPageToLoad("30000");
    }

    @After
    public void tearDown() throws Exception {
        selenium.stop();
    }
}
 

      最后在MyEclipse中运行LoginTest即可开始自动化测试。

      此处需要注意在执行自动化测试的时候Selenium服务时启动的。

 

 

 

 

 

 

你可能感兴趣的:(web开发,selenium,自动化测试)