我的漫漫程序之旅

专注于JavaWeb开发
随笔 - 39, 文章 - 310, 评论 - 411, 引用 - 0
数据加载中……

selenium初探

先确保你的4444端口没被占用,可以用netstat -an命令查看一下.
然后确保你的jdk版本在1.5以上.

第一步:
找到你下载的selenium解压目录下的selenium-server-0.9.2目录.
在这个目录下写个批处理,内容为:

java -jar selenium-server.jar
保存为start.bat,名字随便啦.双击启动.这个是服务,在一切工作开始之前,
必须先启动这个,启动后的dos窗口不要关闭.

第二步:
在MyEclipse建个web工程,把selenium-java-client-driver-0.9.2目录下的jar包加入
到web工程的lib目录下.加入junit4支持.

第三步:
写个测试index.jsp页:

<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<html>
  
<head>
    
<title>test!</title>
  
</head>
  
  
<body>
  
<form action="success.jsp" method="post">
    UserName:
<input type="text" name="username" /><br />
    
<select name="select">
        
<option value="game">游戏</option>
        
<option value="program">编程</option>
    
</select> <br/>
    
<input type="submit" name="sub" value="submit"/> <br />
    
</form>
  
</body>
</html>
还有一个success.jsp:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  
<head>
    
<title>success</title>
  
</head>
  
<body>
    ok!
  
</body>
</html>

写个测试类:
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.server.SeleniumServer;
import static org.junit.Assert.*;
import com.thoughtworks.selenium.DefaultSelenium;
import com.thoughtworks.selenium.Selenium;


public class TestPage
{
    
private Selenium selenium;
    @Before
    
public void setUp()
    
{
        
//此url必须是Selenium服务器地址
        String url = "http://localhost:4444";
        selenium 
= new DefaultSelenium("localhost",SeleniumServer.getDefaultPort(),"*iexplore",url);
        selenium.start();
    }

    
    @After
    
public void tearDown()
    
{
        
try
        
{
            selenium.stop();
        }
 catch (RuntimeException e)
        
{
            System.out.println(e.getMessage());
        }

    }

    
//测试标题,文本框输入,及按钮点击
    @Test
    
public void test1()
    
{
        
//我这里是tomcat的地址,我的tomcat端口是8888,selenium是当前工程,我让它打开首页
        selenium.open("http://localhost:8888/selenium/index.jsp");
        String title 
= selenium.getTitle();
        
//原来网页的标题
        System.out.println(title);
        selenium.type(
"xpath=//input[@name='username']""zdw");
        
//得到输入的文本框的值
        System.out.println("textvalue:" + selenium.getValue("xpath=//input[@name='username']"));
        selenium.click(
"xpath=//input[@name='sub']");
        selenium.waitForPageToLoad(
"4000");
        assertEquals(title, 
"test!");
        
//输出新页的标题
        System.out.println(selenium.getTitle());
    }

    
//测试选择框
    @Test
    
public void testSelect()
    
{
        selenium.open(
"http://localhost:8888/selenium/index.jsp");
        selenium.select(
"xpath=//select[@name='select']""index=1");
        
//得到选择的id
        System.out.println("selectid:" + selenium.getSelectedIndex("xpath=//select[@name='select']"));
        
//得到选择的值
        System.out.println("selectvalue:" + selenium.getSelectedValue("xpath=//select[@name='select']"));
        selenium.click(
"xpath=//input[@type='submit']");
        selenium.waitForPageToLoad(
"3000");
    }

    
    
}










注释已经很详细了,感觉selenium很好用,完全可以模拟浏览器操作.我这里用的是ie,你当然可以用firefox或其它.
源码可在我的网盘下载.


posted on 2007-11-24 16:13 々上善若水々 阅读(1863) 评论(0)  编辑  收藏 所属分类: 软件测试


只有注册用户登录后才能发表评论。


网站导航: