Web自动化工具对比
首先说一下我对Web自动化测试与CS自动化测试的认识。从宏观对比都是通过脚本自动化完成功能的验证,区别不大。Web测试更为显著的浏览器兼容性、安全,以及与Web技术相关的表单测试、链接测试等,其实都是功能上的区别带来的不同规格,从实现自动化来看,都是相通的。
对于UI自动化二者因为技术选择的原因,有些差别。CS程序开发技术选择多,界面识别需要特定的插件,BS遵循Html,相对比较规范。大部分能够进行CS自动化测试的框架(QTP、RFT)都能够进行Web自动化,反之未必。
性能测试是通过压力实现的。负载测试通过协议仿真,对服务器进行冲击。CS程序使用Socket连接,会有私有协议在内,不好模拟。BS是严格的Http协议,比较容易仿真。
目前Web大行其道,CS不可或缺,但也越来越小众了。对于一个要实现Web自动化的项目,如何选择工具(框架)是需要很多衡量的,下面从几个方面对比常见的Web自动化工具:Selenium、QTP(UFT)、RFT、watir、sahi。
几乎所有工具都能支持多中浏览器,从费用角度QTP和RFT都太贵了,反过来说用开源的实际也要投入研发费用,有利有弊。
学习成本主要是语言的壁垒,现在用Java和Python的还是多,资料也好找。
个人学习我推荐Selenium,已经是事实的Web自动化框架。
项目选择要看实际情况,如果要快、稳定,又不差钱,QTP和RFT都可以考虑,相比较更推荐QTP,原因:用的人多。
如果条件允许,那还是二次开发Selenium,目前做的方案TestNG+Selnium,通过Ant打包,使用Jenkins进行集成构建。这些组件都能进行扩展,自主权在自己手上,不会受软件厂家的牵制。
Web自动化工具对比的更多相关文章
- web自动化工具-开篇
web自动化工具-开篇 最近几年,前端技术风一样的速度迭代更新,各种框架工具雨后春笋般涌现,作为一个平凡的开发者,也只能在洪流中沉沉浮浮,微不足道,以前前端叫做切图仔.美工,如今改了称号叫前端工程师, ...
- web自动化工具-liveStyle
web自动化工具-liveStyle LiveStyle. The first bi-directional real-time edit tool for CSS, LESS and SCSS主要用 ...
- web自动化工具-livereload
web自动化工具-livereload livereload是一个很神奇的工具,主要解放了F5键,监听文件变动,整个页面自动刷新.可搭载gulp等构建工具使用.和liveStyle 针对样式文件相比, ...
- web自动化工具-Browsersync
web自动化工具-Browsersync browser-sync才是神器中的神器,和livereload一样支持监听所有文件.可是和livereload简单粗暴的F5刷新相比,browsersync ...
- 打印报表工具,web报表工具对比
1.jasperreport报表 有批量报表打印功能,但一般需要通过专门的编程实现批量报表打印:一些较简单的分片式打印能通过主子表实现:不能自动适应纸张大小:不支持分栏打印:不支持一纸多页打印:不支 ...
- puppeteer(一)环境搭建——新Web自动化工具(同selenium)
一.简介 https://github.com/GoogleChrome/puppeteer Puppeteer是一个Node库,它提供了一个高级API来控制DevTools协议上的 Chrome或C ...
- puppeteer(二)操作实例——新Web自动化工具更轻巧更简单
一.入门实例 了解puppeteer见上一篇文章: https://www.cnblogs.com/baihuitestsoftware/p/9957343.html 1)本例主要是启动浏览器 con ...
- 自动化工具selenium
selenium web 自动化工具 selenium 不仅仅可以做web自动化,还可以考虑用于爬虫 java.python..net都可使用,具体使用方法google 构建Python+Seleni ...
- 爬虫实战:爬虫之 web 自动化终极杀手 ( 上)
欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:陈象 导语: 最近写了好几个简单的爬虫,踩了好几个深坑,在这里总结一下,给大家在编写爬虫时候能给点思路.本次爬虫内容有:静态页面的爬 ...
随机推荐
- ios 推断是qq,银行卡,手机号等等公用的方法。
#import <Foundation/Foundation.h> typedef enum { IdentifierTypeKnown = 0, IdentifierT ...
- UVA 11800 - Determine the Shape 几何
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- 汉字转换成对应ASCII
private static byte[] hanziToHexByte(string hanzistring) { byte[] bytes = Encoding ...
- thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么
thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么 一.总结 一句话总结:在thinkphp中,我们访问的始终是入口文件,并没有主动去访问任何一个其他文件,只不过在入口文件体内 ...
- 如何使用google地图的api(整理)
如何使用google地图的api(整理) 一.总结 一句话总结:直接用script标签引google地图api即可. 1.如何使用google地图的api? 页面引用javascript文件<s ...
- 18.1 IIC驱动程序(基于3.4.2内核)
驱动使用smbus提供的IIC读写函数可以参考smbus-protocol.txt文档:应用层直接使用IIC读写函数读写IIC设备,应用层读写函数是由i2c-tools这个库提供的(编译的使用和应用程 ...
- matplotlib学习之颜色样式
一.颜色 1.内建八种默认颜色 蓝色 - 'b' 绿色 - 'g' 红色 - 'r' 青色 - 'c' 品红 - 'm' 黄色 - 'y' 黑色 - 'k' 白色 - 'w' 2.灰度 plt.plo ...
- strace跟踪线程调用
方法一:strace -fp pid , 可以跟踪所有线程, 进程的系统调用. [root@xxxx]strace -p 24091 Process xxx attached - interrupt ...
- 【36.86%】【codeforces 558B】Amr and The Large Array
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...
- Android多线程研究(5)——线程之间共享数据
一.如果是每个线程都执行相同的代码,则可以使用同一个Runnable来实现共享 public class MultiThreadShareData { public static void main( ...