解析Selenium

发表于:2007-10-10 11:24

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:曾巧    来源:曾巧的专栏

        要选择一个目前比较好的Web应用验收测试工具,有一定了解的人都会想到OpenQA Selenium,它能按照你设置的步骤逐步执行所有按键操作并给出执行结果,最终达到测试的目的。将Selenium这样的Web测试框架引入到你的Web项目里,可以使你的Web功能实现可重复级测试。在引入过程中,你不必担心编程语言或浏览器问题,因为Selenium RC支持Java、C#、Ruby等语言和IE、Firefox、Mozilla Suite等浏览器,同时还提供了一个Firefox插件Selenium IDE,它不仅能帮你记录你在页面上的操作步骤,还能执行你录制的步骤并显示执行结果了,它也可以生成相应语言的测试代码,供你在持续集成里执行。

        在国内,Selenium也确实火了一段时间,首先是徐昊的一篇文章,引起的大家广泛关注;然后江南白衣也加入其中,并在SpringSide2.0已经全面应用Selenium(在example里有几个简单的功能测试);接下来就是Tin组织并推动的Selenium中文化项目;大半年过去了,Selenium中文化从最开始的强势出击到现在的停滞不前,其间遇到的波折和问题,我是不太了解的,不过我还是从中学到了很多东西,也开始尝试在项目中使用Selenium进行功能测试。

        在使用Selenium过程中,越发发现它并不像大家吹嘘的那么强大,问题和局限性都比较多,并结合自身的实际情况,最终放弃使用Selenium。下面是本人总结出来的一些问题点,希望能作为大家选择和使用Selenium时的参考。

Selenium适合比较专业的团队使用
        Selenium所提供的命令非常强大(这是缘于它有强大的XPath表达式),要让开发人员、测试人员和用户理解和应用这些常用的命令也不是易事,虽然Selenium提供了支持Firefox的IDE,但目前国内公司的内部使用的主流浏览器还是IE,外加部分遗留系统的JS存在问题(不支持Firefox),这使得推广和应用时存在阻力。
Selenium不支持动态链接按钮处理
        这个问题十分烦人,导致很多地方的测试都不连贯,也无法验证一些操作是否正确,也就无法谈及自动化了;也可能是我没有掌握到Selenium处理动态链接按钮的方法。
Selenium对特别复杂的页面支持不好
        如果用Selenium来测试类似登录或注册这样简单的页面时,它的确是我们的一个很好的帮手,能帮助我们处理得很好,而在处理复杂的企业应用系统页面时,它却显示是那样的弱不禁风和脆弱;同时在处理包含有大量组件需要测试的页面时,也是相当恐怖的,如果要测试10组件的相符作用关系的话,排列组合出来也是一个不小的数字,虽不复杂,但很麻烦
<!--[if !supportLists]-->

Selenium社区不活跃
        最后,Selenium的社区不够活跃,也是我们放弃使用Selenium的原因之一。即使Selenium Core和RC最近才发布了新版本,我也不得不说这个社区不怎么样,得不到很好的支持和帮助。新版本也没有来带特别有效和值得一提的功能。
        Selenium还需要时间来不断成长和完善,想依靠Selenium这样的工具来实现系统验收的自动化更是需要时间。当这一天真的到来之时,我们的部分同行可能会因使用上自动验收工具而减轻工作负担,而另外部分同行可能会面临失业危机,因为他们所做的工作将会被计算机所替代。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号