Selenium Java 测试-Selenium深入浅出0.9.0-测试-IT技术博客

1, java 项目中,加入 selenium-java-client-driver.jar。


2, 启动 selenium-remote-control 服务器


3,把 Selenium IDE 录制的 Selenium 脚本转换成 Java 格式,Java 代码复制到 Java 项目中。


package com.example.tests;
import com.thoughtworks.selenium.*;
import java.util.regex.Pattern;
public class NewTest extends SeleneseTestCase {
    public void setUp() throws Exception {
        setUp("http://auto.sohu.com/", "*chrome");
    }
    public void testNew() throws Exception {
        selenium.open("/");
        selenium.select("price", "label=10-15 万");
        selenium.select("bodywork", "label=SUV/越野车");
        selenium.select("brand", "label=B 比亚迪");
        selenium.click("//form[@id='SBL']/div/div[2]/a/img");
        selenium.click("link=比亚迪 F0");
    }
}

看一个真实的例子:


public class ScrComplaintControllerTest extends Demo006ControllerTest{
    private IProcessHtmlService processHtmlService=new ProcessHtmlService();
    /*
    * 下面是简单单独的测试
    *
    * */
    @Test
    public void prepareAddCase(){
        this.browser.open("http://localhost:8080/macodemo/complaint/prepareAddCase.page");
        Assert.assertEquals("prepareAddCase出错", "新增個案",this.browser.getTitle());
    }
}

基类


public class Demo006ControllerTest extends SeleniumControllerTest {
    /**
    * @throws java.lang.Exception
    */
    @Before
    public void setUp() throws Exception {
        browser = new DefaultSelenium("localhost", 4444, "*iexplore","http://localhost:8000/macodemo/");
        browser.start();
        SeleniumLoginUtil.managerLogin(browser);
    }
    /**
    * @throws java.lang.Exception
    */
    @After
    public void tearDown() throws Exception {
        this.browser.stop();
    }
}


public abstract class SeleniumControllerTest {
    protected Selenium browser;
    /**
    * @throws java.lang.Exception
    */
    @BeforeClass
    public static void setUpBeforeClass() throws Exception {
    }
    
    /**
    * @throws java.lang.Exception
    */
    @AfterClass
    public static void tearDownAfterClass() throws Exception {
    }
}

在每一次 JUnit 测试之前应该执行:


Selenium browser= new DefaultSelenium("localhost", 4444, "*iexplore","http://localhost:8000/macodemo/");
browser.start();


结束时执行this.browser.stop();


Selenium 类用来执行 Selenium 操作,控制浏览器执行 Selenium 指令。


DefaultSelenium 的构造器的参数是你连接的 Selenium 服务器的 ip 地址和端口,第


三个参数是用来执行 Selenium 指令的浏览器,最后一个参数是浏览器的起始 URL。


执行简单的 Selenium 指令:

this.browser.open("http://localhost:8080/macodemo/complaint/prepareAddCase.page");


通过 Selenium 服务器向服务器所在的机器的浏览器发出指令,打开一个 URL。

Assert.assertEquals("prepareAddCase 出 错 ", " 新 增 個 案 ",this.browser.getTitle());


返回浏览器页面的 Title 值,判断是否是预期的,如果不是,那么就是出现了错误。


标签: Selenium教程基础教程Selenium教程Selenium入门