首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

面向 Web 的自动化测试工具 (2)

面向 Web 的自动化测试工具 (2)

Watij 的使用及相关讨论首先本节介绍了 Watij 的应用方法,然后通过一个具体的应用实例来介绍 Watij 的使用。由于 Watij 目前只对 IE 浏览器有较好的支持,故以下涉及的内容都是以 Windows 平台为例,此外,RFT(Rational Functional Tester)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和 GUI 开发人员,故本文采用 RFT 作为 Watij 的 Java IDE 进行描述的;而后文章简单地介绍 Watij BeanShell 的使用方法;最后本节对 Watij 和 Selenium 这两个目前较为流行地自动化测试框架进行简要的比较与说明,说明了两者的区别与联系,以及这两者的各自的应用范围及应用领域,说明了在何种情况下应用那款自动化测试框架才会使其发挥更大的作用。
Watij 的应用方法首先简要介绍 Watij 的功用。Watij 可以驱动 HTML 在浏览器上的 Web 应用,它不需要像 Active X、JavaApplets、Macromedia Flash 等类似的插件服务一样。
在基于 Web 的自动化测试中,如何获取网页对象属性是开发 GUI 自动化测试程序的关键步骤。由于 Watij 本身没有提供类似于 RFT 中 Object Capture 的对象捕捉器,但在 Watij 程序的开发中,我们可以使用一些第三方提供的运行在浏览器端的 HTML 查看器,进行网页对象的获取,以便查看网页的结构和对象的属性,这样将使我们的开发工作变得更为方便。对于 IE 浏览器,可安装 Microsoft IE Explorer Develop Toolbar,如果用户使用的 IE 浏览器的版本在 8.0 以上,也可以通过点击 F12,选择开发人员工具,也可以达到查看某个对象属性的目的。
在使用 Watij 进行编写自动化脚本的时候,开发人员需要使用类似于 XPath 这样的编程语言去查看或者定位要使用的对象属性。XPath 是一门在 XML 文档中查找信息的语言。它用于在 XML 文档中通过元素和属性进行导航。这样开发人员才可以有效地进行自动化脚本的开发与应用。
Watij 的应用实例1. 将工程建立完成后,需要新建一个“Jnit Test Case”(如图 2 所示),例如输入“Name”为“TestWatijIBM”(图 3),点击“Finish”。就可以建立一个新的脚本,就可以进行编写程序,进行自动化测试的工作了。
图 2. 新建“Junit Test Case”图 3. New Junit Test Case 界面2. 下面我们以“IBM”为关键字进行百度搜索的操作做为实例进行介绍。
清单 1. 以“IBM”为关键字进行百度搜索
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import static watij.finders.SymbolFactory.name;
import junit.framework.TestCase;
import watij.runtime.ie.IE;

public class TestWatijIBM extends TestCase {
public void testgooglesearch() throws Exception{
IE ie = new IE();
// 打开 IE 浏览器
ie.start();
// 转到百度主页
ie.goTo("www.baidu.com");
// 在输入框内输入“IBM”
ie.textField(name,"wd").set("IBM");
// 点击“百度一下”进行查找
ie.button("百度一下").click();
// 等待 3 秒
ie.wait(3);
}
}




3. 运行:输入以上代码并保存后,选择“Run as”->“JUnit Test”,如图 4 所示。
图 4. 运行代码4. 执行结果:如果执行过程没有报错时,JUnit 执行状态显示为绿色(如图 5 所示),并且能够打开百度的主搜索界面,对“IBM”为关键字的网页进行检索(如图 6 所示)。
图 5. 运行结果图图 6. 运行 Baidu 界面检索图5. 具体代码解释
IE ie = new IE(); IE 对象实例化
ie.start(); 启动 IE 浏览器
ie.goTo("www.ibm.com"); 转到 www.baidu.com 主页
ie.textField(name,"wd").set("IBM"); 在输入框中输入查找内容:“IBM”
ie.button("百度一下").click(); 利用 click 函数点击“百度一下”这个 Button
此外,Watij 提供了多种常见的 Web 对象的识别与操作的支持,例如:窗口的控制(最大化及最小化操作),超链接的点击,多选框的选择,CheckBox 的选中与清除,RadioBox 的选中与清除,下拉框和列表框的选择,文本框的输入,图片及各种表格的插入与删除,各种按钮的点击,Frame 的访问以及弹出窗口的控制等。
返回列表