本篇文章初步介绍使用Java+Selenium进行web的自动化测试, 仅仅是起步!!!!html
1. 环境准备java
1.1 Java环境
安装, 配置jdk
1.2 Java IDE
由于Selenium支持Java/C#/Ruby/Python/Perl等,这里选择用Java。到Eclipse官方网站下载Eclipse, 解压
1.3 Selenium
到Selenium官方网站http://seleniumhq.org/download/下载Selenium IDE,Selenium Server, Selenium Client Driver
以上三者之间的关系是:
Selenium IDE能够录制脚本,执行脚本,修改脚本,将录制的脚本导出成其余语言(好比Java)---本篇不讨论
Selenium Server是和Selenium Client结合使用的,Server用来启动浏览器,接受Client端的请求,执行test;
Client端则是向Server端发送请求。
2. 在Eclipse中编辑并运行test
2.1 新建一个Java project: File-New-Java Project
2.2 在上一步建好的项目名称上点鼠标右键, 点击Build Path-Add External Archives...,将下载的selenium-java-2.21.0.jar(client)和selenium-server-standalone- 2.21.0.jar(server)加进来
web
2.3 启动selenium server.进入cmd,运行 "java -jar selenium-server-standalone-2.21.0.jar" --保证能找到改jar包。信息以下:浏览器
[java] view plaincopyapp
信息: Launching a standalone server ide
22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b03 测试
22:16:21.500 INFO - OS: Windows XP 5.1 x86 网站
22:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 16552 ui
22:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0. url
1:4444/wd/hub
22:16:21.875 INFO - Version Jetty/5.1.x
22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server
/driver]
22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]
22:16:21.875 INFO - Started HttpContext[/,/]
22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d173
22:16:22.062 INFO - Started HttpContext[/wd,/wd]
22:16:22.093 INFO - Started SocketListener on 0.0.0.0:4444
22:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f
信息: Launching a standalone server22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b0322:16:21.500 INFO - OS: Windows XP 5.1 x8622:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 1655222:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub22:16:21.875 INFO - Version Jetty/5.1.x22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]22:16:21.875 INFO - Started HttpContext[/,/]22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d17322:16:22.062 INFO - Started HttpContext[/wd,/wd]22:16:22.093 INFO - Started SocketListener on 0.0.0.0:444422:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f
2.4 代码测试
[java] view plaincopyprint?
import com.thoughtworks.selenium.DefaultSelenium;
public class SeleniumDemo01
{
public static void main(String[] args)
{
String host = "localhost";
int port = 4444;
String url = "http://www.baidu.com/";
String browserType = "*firefox";
String keyWordsLocator = "document.getElementById('kw')";
String search = "document.getElementById('su')";
DefaultSelenium selenium = new DefaultSelenium(host,port,browserType,url);
selenium.start();
selenium.open(url);
selenium.type(keyWordsLocator,"java selenium");
selenium.click(search);
selenium.waitForPageToLoad("50000");
selenium.stop();
}
}
运行结果:
1.firefox浏览器期待
2.打开百度主页
3.在搜索框中键入了"java selenium"
4.点击"百度一下"按钮
5.等等页面加载50s
6.关闭浏览器