新浪微博:罗斯汀zdlzx

喜爱Sahi的10个理由

上一篇 / 下一篇  2012-04-10 18:03:17

使用Sahi作为web自动化测试工具一年以来,深深喜欢上了这个小巧简单却功能强大的工具。下面列举喜爱Sahi10个理由。

工具与语言本身

1. 容易上手

个人体验,Sahi学习起来要比QTPSelenium更简单。Sahi网站有一个长约5分钟的视频(http://sahi.co.in/static/sahi_tutorial.html)非常值得一看。看完视频,下载完Sahi,一天之内你应该就可以开发出自己的第一个Sahi脚本。

 

2.      2. 对ExtJS支持不错

QTP能支持的对于动态ID的支持(通过正则表达式或者_near等相对关系),Sahi可以同样做到。而在对于表格处理方面,Sahi要略胜一筹。比如,判断一个表的某个表格是否是某值,在Sahi里可以一句代码轻松实现:_assertEqual("ABCD",_getText(_cell(1,_in(_div("x-grid3-body")))));QTP则需要做表和列的循环才能拿到,代码量大且效率也不高。

 

3.      3. 对于AJAX调用和页面载入,大部分时间不需要显式wait。当然,我实践下来有些情况还是需要写wait,导致代码比较丑陋。

 

4.      4. Sahi脚本执行更快速

由于支持多个浏览器进程同时运行,互相独立的测试脚本可以并行执行,大大缩短测试运行时间。这对于快速检查某版本的稳定性是一个很棒的特性。

 5.      5. 免费

虽然Sahi有免费版和收费版,但免费版已经很不错。

环境相关

6.      6. Sahi较轻量,所以对机器资源要求较低,也似乎更容易稳定

Sahi启动比起QTP肯定是轻量。它也没有大量的OR需要存储。Sahi网站说同时运行3个进程大概是50M内存。所以无论从存储空间、执行时的效率和稳定性,Sahi都让我更信赖一些。

 

7.      7. Sahi脚本执行时可以释放鼠标,也可以锁屏

原来我们在做daily build的时候碰到的一个问题是QTP的脚本不能在锁屏的情况下运行,而需要另外的方法绕过去。Sahi没有这个问题,它执行的时候你可以用鼠标和键盘做其它事情,锁屏的时候它也乖乖地运行。

 8. 8. Sahi对浏览器支持不错

Sahi支持一套脚本,多个浏览器下运行(仅需要修改一个运行参数)。所以,不同浏览器下程序不兼容问题可以快速暴露出来。而且Sahi对浏览器的新版本支持也没有问题。不象有些工具对浏览器不同版本的patch总是滞后比较多的时间,而不打patch则无法运行。


9.      9.Sahi可以和持续集成工具轻松集成

Sahi提供接口,可以方便地和Ant, Hudson, Jenkins集成。

 

10.  10.Sahi提供对BDD的支持

Sahi支持Ruby语言编程,可以和Cucumber集成来实现BDD


TAG:

引用 删除 qi_ling2005   /   2012-06-15 09:00:18
感觉sahi和selenium RC的实现原理是一样的吧,都是通过代理对浏览器进行JS注入,这样没有JS沙箱的问题吗?
 

评分:0

我来说两句

日历

« 2024-04-05  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 1324156
  • 日志数: 88
  • 建立时间: 2010-08-18
  • 更新时间: 2016-02-25

RSS订阅

Open Toolbar