InfoQ

新闻

Web自动化测试工具Selenium 1.0正式发布:Chrome支持+用户指南

作者 崔康 发布于 2009年6月12日 下午9时40分

社区
Java
主题
软件测试,
工件和工具,
单元测试
标签
验收测试,
开源软件,
测试驱动开发,
测试,
质量,
Selenium

Selenium是一款开源Web自动化测试工具,最近发布了1.0版,标志着Web自动化测试领域正式加入了一名新成员。在其新版本中,除了修正了若干Bug,最引人瞩目的就是Selenium RC增加了对Google Chrome浏览器的支持,同时Selenium官方网站上提供了完整的用户指南。

InfoQ一直关注Selenium的成长,赵劼.NET平台下Web测试工具横向比较一文中对Selenium做了概括:

严格说来,Selenium是一套完整的Web应用程序测试系统,它包含了测试的录制(Selenium IDE)、编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit, 完全由JavaScript编写,因此可运行于任何支持JavaScript的浏览器上。Selenium Core由一种指定格式的HTML文件驱动,在一定程度上增强了测试套件(Test Suite)的可读性。Selenium Remote Control允许测试人员使用常见的语言(自然包括C#等.NET语言)编写测试代码,并支持不同操作系统下的各种主流浏览器。Selenium Grid的作用是将测试分发至多台机器,这样便可大大加快测试速度。与WatiN相同,Selenium也是一款同样使用Apache License 2.0协议发布的开源框架。

从读者对上文的回复中也可以看出,国内社区对Selenium的喜爱和关注也在升温。

Selenium作为一款Web自动化测试工具,其支持的浏览器类型之多一直为社区所乐道,而在1.0版中,Selenium正式加入了对Google Chrome的支持

Selenium Remote Control采用浏览器参数googlechrome调用Google Chrome,在Windows XP/Vista上已通过测试,Chrome支持由Google人员完成。

至此,除了对IE8的支持功能还在开发中,其他所有主流浏览器都可以通过Selenium来自动化驱动以测试Web应用。

Selenium的官方网站在Selenium 1.0发布之际,正式推出了Selenium的用户指南。在此之前,用户只能通过有限的文字介绍和论坛来学习Selenium。现在,负责文档写作的团队完成了一份较为完整的Selenium用户指南,主要包括:

除此之外,Selenium 1.0还包括了以下重要更新:

不过在Selenium 1.0中,shutDownSeleniumServer命令由于之前的代码重构错误而不起作用,因此Selenium团队随即发布了1.0.1版本,以修正该Bug,最新版可以从这里下载。

令人欣喜的是,国内社区在学习和使用Selenium之余,也针对其不足提出了新的Web自动化测试框架,Tellurium就是其中一个。目前InfoQ中文站张凯峰对此做了专题报道,Tellurium的创始人方剑先生在采访中谈到了Selenium的不足:

我有个工作(Task)就是用Selenium去测试我们的一个应用程序(是用Dojo Javascript框架写的)。应该说在当时,Selenium是一个开创性的框架,如果用他们的复制和重播模式(record and replay)很容易产生测试脚本。但一旦我开始用Selenium,我发现它还是有一些缺点和不便之处。主要测试脚本是对代码的更新很脆弱 (Fragile)。 但是在一个敏捷开发的环境下,一般都有阶段性的用户接受测试(User Acceptance Test),由于程序一直更新,Selenium测试脚本的维护就变成一个很头痛的问题。而且,对于很多企业级应用,复制和重播模式本身就不太适用,比喻 我们有很多数据格(Data Grid),它的内容本身就是动态的。其他的问题包括Selenium测试脚本不是结构化的,你可以看到处有XPath,这更增加了维护的困难。

他同时表示,Tellurium脱胎于Selenium,它的主要竞争对手还是Selenium, 毕竟Selenium已经推广好几年了。要用户用一个新的框架是要花一定的时间的。

由此可见,Web自动化测试工具的竞争愈演愈烈。但不论是Selenium还是Tellurium,软件开发社区都是最终的评判者和受益者。读者可以在InfoQ中文站查看更多有关测试的报道。

国内web测试工具新秀360WebTester 发表人 ying zhu 发表于 2010年1月27日 上午2时32分
Re: 国内web测试工具新秀360WebTester 发表人 ying zhu 发表于 2010年1月27日 上午2时34分
Re: 国内web测试工具新秀360WebTester 发表人 ying zhu 发表于 2010年1月27日 上午2时35分
  1. 返回顶部

    国内web测试工具新秀360WebTester

    2010年1月27日 上午2时32分 发表人 ying zhu

    国内日前也出现了一款Web自动化测试工具新秀360WebTester,功能方面比Selenium强很多,采用ruby作为脚本,和Watir有很大相像,号称可以作为watir IDE,不过好像支持IE浏览器

  2. 返回顶部

    Re: 国内web测试工具新秀360WebTester

    2010年1月27日 上午2时34分 发表人 ying zhu

    网址www.tester360.com

  3. 返回顶部

    Re: 国内web测试工具新秀360WebTester

    2010年1月27日 上午2时35分 发表人 ying zhu

    “不过好像支持IE浏览器 ”改为“不过好像只支持IE浏览器 ”

深度内容

模块化Java:声明式模块化

本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。

Ian Robinson和Jim Webber谈论基于Web的整合

本采访是在伦敦举行的QCon2009上记录的,Ian Robinson和Jim Webber探讨了如何将Web作为整合平台以及REST在理论上和实践中的好处。

项目管理修炼之道(精选版)

项目管理对于项目成败至关重要,但实践中每个项目都有自己的独特性,没有现成的解决方案可以套用。书中从应对实际风险的角度出发,讲述了从项目启动、项目规划到项目结束的整个管理流程,展示了作者的思考过程。本迷你书从原书中精选出5个章节。

那是鸟,还是飞机?不,那是超人!

在这个演讲中,Fred将会揭示敏捷的一些外在因素,并会重点关注敏捷获得成功的内在原因。从案例研究和真实的项目经验来看,Fred认为:工具、管理体系都不能让你变得敏捷。敏捷的成功,植根于士气高涨、充分授权的工作者身上,他们能够以不同以往的方式思考问题。

访谈和书摘:Eben Hewitt的新书《Java SOA Cookbook》

Java SOA Cookbook

Eben Hewitt的新书《Java SOA Cookbook》从Java实现的角度讨论了面向服务架构。Eben在书中讨论了SOA基础、工具、最佳实践和SOA治理等主题。

Mark Richard的《Java消息服务》第二版

Mark Richards的新书《Java消息服务》第二版覆盖了JMS的许多主题, 包括发布和订阅模式以及点对点模式,消息过滤和事务等。InfoQ与Mark谈论了跟他的新作。

模块化Java:动态模块化

本文是“模块化Java”系列文章的第三篇,讨论动态模块化,内容涉及如何解析bundle类、bundle如何变化、以及bundle之间如何通信。

让测试也敏捷起来

对于测试组织来说,敏捷方法带来的快速迭代却让测试本身变得困难起来:缺乏“足够详细的文档”,缺乏“仔细设计用例的时间”等等。在本演讲中,段念将与大家探讨如何在敏捷过程中进行测试。