JMeter中使用Selenium进行测试

来源:互联网 发布:淘宝店铺增加粉丝数量 编辑:程序博客网 时间:2024/04/27 05:08

http://www.51testing.com/?action-viewnews-itemid-862456


 JMeter是使用非常广泛的性能测试工具,而Selenium是ThroughtWorks 公司一个强大的开源Web 功能测试工具。Jmeter和Selenium结合使用,就可以实现对网站页面的自动化性能测试。
  这里有两种方式在Jmeter中调用Selenium测试用例。可以使用 Jmeter JUnit sampler 或者 BeanShell sampler,后一种方式包含了Selenium client 和 server,因此不需要单独启动Server。
  方法一
  准备工作:
  将文件selenium-server-standalone-2.*.jar拷贝到JMeter类库安装目录%JMETER_HOME%/lib/下,手动启动Selenium server。
  Jmeter JUnit sampler
  将Selenium测试用例打包成.jar文件,并拷贝到%JMETER_HOME%/lib/junit/目录下,注意:测试用例应该继承TestCase or SeleniumTestCase类,从而允许JMeter获取到该测试用例,且测试方法名称应该以test开头。
  在Jmeter中创建test group和JUnit sampler测试计划,并在JUnit sampler中选择测试用例的名称,选择测试方法并运行。当然还可以根据需求设置其他参数。
  一个测试用例例子:
package com.example.tests;
import com.thoughtworks.selenium.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.After;
public class selenium extends SeleneseTestCase {
@Before
public void setUp() throws Exception {
. . .
}
@Test
public void testSelenium_test() throws Exception {
. . .
}
@After
public void tearDown() throws Exception {
selenium.stop();
}
}
方法二
  准备工作:
  将文件selenium-server-standalone-2.*.jar拷贝到JMeter类库安装目录%JMETER_HOME%/lib/下,不需要启动Selenium server.
  Jmeter JUnit sampler
  将Selenium测试用例打包成.jar文件,并拷贝到%JMETER_HOME%/lib/junit/目录下,注意:测试用例应该继承TestCase or SeleniumTestCase类,从而允许JMeter获取到该测试用例,且测试方法名称应该以test开头。
  在Jmeter中创建test group和JUnit sampler测试计划,并在JUnit sampler中选择测试用例的名称,选择测试方法并运行。当然还可以根据需求设置其他参数。
  一个测试用例例子:
import junit.framework.TestCase;
import org.openqa.selenium.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.After;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
public class selenium extends TestCase {
WebDriver driver;
@Before
public void setUp() {
FirefoxProfile profile = new FirefoxProfile();
. . .
driver = new FirefoxDriver(profile);
}
@Test
public void testSelenium_test() throws Exception {
. . .
}
@After
public void tearDown() {
driver.quit();
}
}

0 0
原创粉丝点击