webDriver模拟点击对web工程测试还是挺方便的.

package suite;

import java.util.concurrent.TimeUnit;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.NoAlertPresentException;
import org.openqa.selenium.NoSuchElementException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.htmlunit.HtmlUnitDriver; public class WebTest {
private WebDriver driver;
private String baseUrl;
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer(); @Before
public void setUp() throws Exception {
// System.setProperty(
// "webdriver.chrome.driver",
// "C:\\Program Files (x86)\\Google\\Chrome\\Application\\48.0.2564.109\\chromedriver_x64.exe");
// driver = new ChromeDriver();
driver = new HtmlUnitDriver(true);
baseUrl = "http://10.10.10.10:8080/";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
} @Test
public void testWeb() throws Exception {
driver.get(baseUrl + "strutsDemo/index.jsp");
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("receiver")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("sender")).click();
driver.findElement(By.id("receiver")).click();
driver.findElement(By.id("start")).click();
driver.findElement(By.id("add")).click();
driver.findElement(By.id("show")).click();
} @After
public void tearDown() throws Exception {
driver.quit();
} private boolean isElementPresent(By by) {
try {
driver.findElement(by);
return true;
} catch (NoSuchElementException e) {
return false;
}
} private boolean isAlertPresent() {
try {
driver.switchTo().alert();
return true;
} catch (NoAlertPresentException e) {
return false;
}
} private String closeAlertAndGetItsText() {
try {
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
if (acceptNextAlert) {
alert.accept();
} else {
alert.dismiss();
}
return alertText;
} finally {
acceptNextAlert = true;
}
}
}

  程序将会模拟打开浏览器点击并测试.测试代码是用selenium ide录制过来的,想要自己写也可以,只不过麻烦一些.如果当前工程部署在linux主机上要把chrome改成

HTMLUnitDriver,代码中我注释了,毕竟linux安装不了chrome,这边用chrome主要是为了看得清楚.

selenium2.0集成测试案例的更多相关文章

  1. selenium2.0(WebDriver) API

    1.1  下载selenium2.0的包 官方download包地址:http://code.google.com/p/selenium/downloads/list 官方User Guide:  h ...

  2. 在selenium2.0中使用selenium1.0的API

    Selenium2.0中使用WeDriver API对页面进行操作,它最大的优点是不需要安装一个selenium server就可以运行,但是对页面进行操作不如selenium1.0的Selenium ...

  3. selenium2.0处理case实例(二)

    本文通过具体代码处理过程, 来展示selenium中一些比较不常用的类的用法 1.javascriptExcutor,通过将driver强转成JavascriptExecutor类型, 调用execu ...

  4. selenium2.0的初步封装(java版本)

    我们都知道, 在本地创建java项目后,引入selenium-java-2.35.0.jar   selenium-support-2.35.0.jar junit-4.8.1.jar等等jar包之后 ...

  5. selenium2.0 处理各种窗口问题解决方法

    selenium2.0处理muti-Windows . Frames .Popup Dialogs selenium2.0处理多窗口,弹窗等,只需要调用WebDriver 嵌套类:TargetLoca ...

  6. selenium1.0和selenium2.0页面等待处理详解

    一.selenium1.0页面等待 1.……AndWait 经常会看到, selenium action命令中很多有这种……AndWait后缀, 例如click和clickAndWait命令: cli ...

  7. 转:Selenium2.0之grid学习总结

    (一)介绍: Grid的功能: 并行执行 通过一个中央管理器统一控制用例在不同环境.不同浏览器下运行 灵活添加变动测试机 (二)快速开始 这个例子将介绍如何使用selenium2.0的grid,并且注 ...

  8. 转:Selenium2.0 click()不生效的解决办法

    除了http://573301735.com/?p=5126讲的,昨天又发现一个让我1个小时生不如死的问题,就是使用两个不同的配置文件来初始化driver,findelement方法获取到的坐标居然不 ...

  9. selenium win7+selenium2.0+python环境搭建

    win7+selenium2.0+python环境搭建 by:授客 QQ:1033553122 步骤1:下载python 担心最新版的支持不太好,这里我下载的是python 2.7(selenium之 ...

随机推荐

  1. asp.net javascript客户端调用服务器端方法

    如何用js调用服务器端方法.首先服务器端方法的格式如下 [System.Web.Services.WebMethod]        public static void serverMethod(s ...

  2. ggplot2 theme相关设置—矩形设置(rect)

    在主题设置中,rect设置主要用于设置图例和面板 element_rect(fill = NULL, colour = NULL, size = NULL, linetype = NULL, colo ...

  3. 【同行说】Android图片处理技术资料汇总(一)

    对于Android开发的童鞋们来说,图片处理时或多或少都会遇到令人头疼和不满意的问题,今天小编收集了5篇Android图片处理的干货文章,一起来看看吧! 一.Android 高清加载巨图方案 拒绝压缩 ...

  4. C# 语言规范_版本5.0 (第1章 介绍)

    1. 介绍 C#(读作“See Sharp”)是一种简洁.现代.面向对象且类型安全的编程语言.C# 起源于 C 语言家族,因此,对于 C.C++ 和 Java 程序员,可以很快熟悉这种新的语言.C# ...

  5. C语言 - 大小端问题

    目前使用的机器都是使用字节BYTE来存储的. 对于跨越多字节的对象,必须搞清楚两个规则: 这个对象的地址是什么 在存储器中如何按照这些字节的存放的书序 对于一个整型对象 a=0x12345678,一共 ...

  6. 杭电21题 Palindrome

    Problem Description A palindrome is a symmetrical string, that is, a string read identically from le ...

  7. JS 经典代码段总结 start from 2016-08-22

    1.for(var i = 0, max = myArray.length; i < max ; i++){ //用myArrayy[i]来做点什么 } 用max存储myArray的长度,防止每 ...

  8. 【ADT】队列的基本C语言实现

    queue.h #ifndef _QUEUE_H_ #define _QUEUE_H_ #include <stdbool.h> #define MAXQUEUE 10 // 定义队列类型 ...

  9. gcc及其选项详解 【转载】

    1.简介: gcc是gnu旗舰产品,目前基本上就是和unix捆绑在一起分发的.这个东西功能强大,但是有多达上千个选项,其用户手册也有将近一万行.虽然其中的多数选项平时很少用到.但是不管装软件还是写程序 ...

  10. 设计模式4 外观模式 FACADE

    一个外观是一个类,其提供的功能介于工具箱的功能和完整系统的功能之间,并为一个包或者一个子系统中的类提供了简化的使用方式.