Selenium
也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建衰退测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。
首先到官网下载各样东西。官网要翻墙。
我主要介绍三个组件。第一个是ide。该ide只能在firefox使用。能够记录你运行的动作,并且能把脚本转换成你所要的语言,比如java,c#。
我刚接触,所以那些触发动作都是用ide记录,然后转录成java写的。按下右上角的那个红色按钮就可以记录,记录结束后再按下就停止。这样就形成了一个testcase。可以进行保存。具体操作在官网有介绍,也有其他文档介绍。
第二个组件是remote control (rc)。这个rc需要开启一个服务器,相对麻烦。首先你用ide转换获得java后。找个eclipse生成一个项目,把该文件放进去。到官网下载服务器。我用的是最新selenium-server-standalone-2.44.0.jar。然后在命令行cd到该目录 java -jarselenium-server-standalone-2.44.0.jar 如图就显示成功。
然后客户端。需要到官网下载selenium-java-2.44.0。
把里面的jar包添加到刚创建的项目里。在所由ide产生的java文件里我们只需要修改@befor注释的方法。
//chrome
selenium = new DefaultSelenium("localhost", 4444, "*googlechrome", "http://www.baidu.com");
//firefox
//selenium = new DefaultSelenium("localhost", 4444, "*firefox D:\\mozilla firefox\\firefox.exe", "http://www.baidu.com");
//ie
//selenium = new DefaultSelenium("localhost", 4444, "*iexplore C:\\Program Files\\Internet Explorer\\iexplore.exe", "http://www.baidu.com");
这代码是里面特别注意chrome里面的googlechrome,不要写成chrome。
firefox里面的要加上firefox的地址。ie的也要加上地址。
以上三处不这样写可能会报错。与官方写的有点不同。我自己实测只能这样写。然后就用junit测试。
在实际操作中,我发现rc有时打开ie后,无法进行操作。具体我也不清楚。所以我最后选择第三种方法。
三,用webdriver
该组件不需要开启服务器。直接由webdriver控制。官方文档有详细说明。
你用ide选择生成
junit4webdriver就可以产生一个文件。然后修改该文件@before注解方法。不修改是运行不了。
File file = new File("C:\\Program Files\\Internet Explorer\\IEDriverServer.exe");
System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
driver = new InternetExplorerDriver();
// System.setProperty("webdriver.firefox.bin","D:\\Mozilla Firefox\\firefox.exe");
// driver = new FirefoxDriver();
// File file = new File("C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe");
// System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
// driver = new ChromeDriver();
以上三个是ie,chrome,ff的运行。这三个就全都运行正常。搞定。基本的demo就这样。我也是刚学。要复杂的还要继续深究。