使用Selenium进行前端测试的一点经验

项目上使用了selenium进行界面的自动化测试,我拿到框架比较老,只能支持FIREFOX3.6的版本,而且不能运行在WIN7的环境上,于是下载了最新的server端和client端.

下载的地址可以去官网:[url]http://seleniumhq.org/[/url]


SERVER端的JAR包名字: selenium-server-standalone-2.28.0.jar
CLIENT端的JAR包名字: selenium-java-2.28.0.zip


运行环境包括下面几个文件夹:

lib //里面主要放CLIENT端的JAR和它的依赖包,老版本的依赖包很少,新版本的很多

test //放写好的JAVA类, 里面可以方一个或者多个

build //放生成CLASS文件

report //放跑完的结果

tools //放工具等

build.xml //ant脚本,编译JAVA文件,生成CLASS,路径等等

log.txt //放LOG日志的

build.bat //client端的启动

start-selenium-server.bat //server端的启动


这个运行环境可以将写好的一个或多个JAVA文件编译并运行,模拟测试人员在界面上的各项操作,达到自动化测试的目的,最后可以生成可视化的结果.

(目前唯一的问题是:不能进行SSL的测试,网上找了一些办法,貌似都不能解决问题,但是估计是和项目的安全证书生成有关联)


[color=darkblue]环境的配置:[/color]

1.需要修改下面三个BAT文件里面关于FIREFOX路径的设置

Test Automatics/start-selenium-server.bat
Test Automatics/tools/ start.bat
Test Automatics/tools/selenium-server/start.bat

(Firefox的路径在windowXP和win7下面不一样的)
WindowXP为firefox的安装全路径 如: C:\document and setting\administrator\Mozilla\Firefox\Profiles\rxzej817.default

Win7为参数路径, 如%APPDATA%\Mozilla\Firefox\Profiles\rxzej817.default(在运行里面输入%APPDATA%就可以找到你本地的路径)


2. JAVA_HOME的设置,我就不在这里罗嗦了

3. URL,用户名和密码的设置

lib\selenium-client-java-driver.jar 我在里面放了一个配置文件LocalConfig.properties里面有URL 用户名和密码的配置, 可以按照袭击的需求修改


[color=darkblue]项目的运行[/color]
先运行start-selenium-server.bat, 得到如下的结果:
[img]http://dl.iteye.com/upload/attachment/0078/5419/330ab249-7824-3025-b2db-510c9bf9cc2d.jpg[/img]

再运行同级目录下的build.bat

(每个CASE如果有错误就会在控制台上打出)


[color=darkblue]错误的查看[/color]

log.txt是记录生成LOG的地方


[color=darkblue]报告的生成[/color]

最后会把所有的TEST CASE的结果放在report路径下面一个新建文件夹里面,文件夹的名字是REPORT-{时间戳},进入最里面找到INDE.HTML查看结果


[color=darkblue]新版和老版的代码区别[/color]

老版代码需要继承SeleneseTestCase类,如下:

public class TestLoginSample extends SeleneseTestCase{

public void setUp() throws Exception {

String url = LocalConfig.get("URL");

selenium = new DefaultSelenium(LocalConfig.get("DefaultSelenium_Domain"),
Integer.parseInt(LocalConfig.get("DefaultSelenium_Port")),
LocalConfig.get("DefaultSelenium_Type"),
url);
selenium.start();
}


新版的代码使用JUNIT,只需要继承TestCase,如下:


public class TestLoginSample extends TestCase {

Selenium selenium;

@Before
public void setUp() throws Exception {

String url = LocalConfig.get("URL");

selenium = new DefaultSelenium(
LocalConfig.get("DefaultSelenium_Domain"),
Integer.parseInt(LocalConfig.get("DefaultSelenium_Port")),
LocalConfig.get("DefaultSelenium_Type"), url);
selenium.start();
}
......
}


(以前写的代码必须更新了....)

你可能感兴趣的:(WEB端自动化测试)