详见我的博客:http://www.zawaliang.com/2013/02/214.html
作为前端开发人员,前端的自动化测试一直是个很棘手的问题,尤其是涉及UI交互层面的。传统的手工测试方式实在太落后以及重复劳动了,程序员就是懒人,总得想方设法释放自己的劳动力。
最近项目没那么忙了,抽点时间了解了下现有的一些自动化测试框架套件,此文只是抛砖引玉,本人也是小白。
PhantomJS
PhantomJS是一个无界面的Webkit,使用Javascript API操作,因为对于前端开发人员而言入门门槛较低。而且还支持常见的测试套件,如Jasmine、QUnit、Mocha等等。
其支持以下主要功能:
- screentshot 截屏
- Page Loading 测速
- Code Evaluation 沙箱化的Javascript执行环境
- Page Automation DOM操作,支持使用jQuery等
- Network Requests and Responses 网络请求与响应
CasperJS
CasperJS是一个使用Javascript编写的,基于PhantomJS的导航脚本及测试套件,它简化了定义一个完整导航的操作处理,提供了有用的高级函数、方法以及语法糖。
具体的参考https://github.com/n1k0/casperjs
Zombie.js
Zombie.js 也是一个无界面的,基于Node.js的测试套件。安装它之前需要先安装Node.js、NPM、C++ Compiler以及Python。语法风格很友好,Dom操作使用Sizzle.js,学习成本低。就是在windows下安装比较麻烦,折腾。
C++ Compiler 编辑器列表
http://www.stroustrup.com/compilers.html
windows下可以选择mingw http://mingw.org/
Zombie.js 支持以下功能:
- HTML5 parsing and dealing with tag soups
- DOM Level 3 implementation
- HTML5 form fields (search, url, etc)
- CSS3 Selectors with some extensions
- Cookies and Web Storage
- XMLHttpRequest in all its glory
- setTimeout/setInterval
- pushState, popstate and hashchange events
- alert, confirm and prompt
- WebSockets and Server-Sent Events
Watir WebDriver
Watir基于Ruby,支持多浏览器。这里说一下Watir的安装(windows)
- 安装Ruby
http://rubyinstaller.org/ - 安装Rubygems
国内可能被墙,可使用淘宝镜像:http://ruby.taobao.org/ - 安装Watir
windows下需先安装DevKit
http://rubyinstaller.org/downloads/
https://github.com/oneclick/rubyinstaller/wiki/Development-Kit对于使用代理上网的,需要设置代理
set HTTP_PROXY=127.0.0.1:8888
gem install watir-webdriver - 安装浏览器支持
默认是支持Firefox的,IE、Chrome、Safari需要另外下载driver配置,将下载到的文件放到Ruby Path里(如:E:\Ruby192\bin)
IE:http://code.google.com/p/selenium/downloads/list
Chrome:http://code.google.com/p/chromedriver/downloads/listsafari安装参考:
http://code.google.com/p/selenium/wiki/SafariDriver
http://17test.info/?page_id=625
Selenium 2 (又名Selenium WebDriver)
Selenium2是一个集成了WebDriver的测试框架
Watir WebDriver是Selenium WebDriver的一个封装,api更友好。但watir使用ruby进行开发,而selenium2可使用多种语言,如ruby、java等进行开发
IBM Selenium 2 入门
http://www.ibm.com/developerworks/cn/web/wa-selenium2/index.html
相关推荐
部门管理、用例管理、测试套件、定时任务、测试报告等,覆盖所有场景。该框架是前后端分离框架,前端源码后续上传; 安装依赖后即可使用。 django rest framework开发 加笔者v(sxz1020923)技术讨论
基于 Demandware SiteGenesis 自动化新商店的测试套件 具有快速学习曲线的测试开发起点 测试自动化和测试套件结构的演示 其他(现有)项目中可重用的最佳实践 测试套件设置 需要以下先决条件和安装步骤
前端框架工作台欢迎来到的项目登录页面, 是一个自动测试套件,专注于比较客户端框架的性能。 该项目利用来模拟用户输入(例如鼠标单击),并利用跟踪来分析和记录交互的时间。登陆页面方法我将是第一个承认这些测试...
4.4.2 测试套件的 Settings.........................................................................................................50 4.5 用户关键字........................................................
用于自动化Web开发的前端入门工具包。 包括什么? 单元测试(QUnit):支持在使用静态Web服务器的PhantomJS无头浏览器实例中使用进行单元测试。 ESLint:检查您的js文件中是否有错误。 Babel:为当前的浏览器转换...
npm run test -- 运行测试套件 npm run start -- 启动静态节点服务器,兼容heroku 建议 ####别名 向您的.bash_profile添加一些别名以方便输入常用命令。 alias nrun="npm run" alias npm-sd="npm install --save-...
可测试项目FCC CDN加载的测试套件,用于测试freecodecamp.com认证航点项目。 你问这是什么? 此存储库是FreeCodeCamp.com课程扩展的一部分,代表了... 因此,该项目应被视为更多功能,而不是自动化测试。 该功能主
使用量角器执行此操作提供了具有静态数据的自动化测试套件的能力,该套件独立于任何将测试环境与任何特定开发环境分离的实际服务(如果没有正确复制确切数据,则可能导致测试失败跨开发环境)。 它还允许自动测试...
文档工具使用Node.js从CSS注释自动生成样式指南-收集,测试和试验CSS和HTML的界面模式配对- ###样板专业的前端开发人员的基本HTML / CSS / JS模板,用于快速,健壮和未来安全的网站。 “小屏幕优先”响应式样板。 一...
CSS / HTML前端堆栈角度11 NGX火箭入门套件NG引导器NGRX状态管理(效果,FeatureSelector) RxJS GitHub(CI / CD管道,自动化测试/部署) 部署到FTP(开发人员,主用户) 赛普拉斯的集成测试安装$ npm install 请...
赛普拉斯的自动化测试框架 在进行了Cypress不同层次测试的培训之后,是功能级别,API和前端的测试框架示例。 网站用于模拟余额验证,财务交易创建,更新和清算等场景。 在前端方案中,该工具允许您通过使用cy.route...
美团外卖自动化业务运维系统建设 技术前沿进展:系统自动化调优 基于Hybrid的移动应用混合开发模式架构演变 阿里移动端图像加载优化与增强 滴滴移动端基础架构的演进与探索 搜狗前端测试质量的度量 负载均衡利器 ...
马苏-MatematickáSoutěž 围绕MaSo(数学竞赛)准备和组织的Web应用程序自动化流程。 有关比赛的说明,请访问 (仅捷克语)。开发设置如果您不熟悉Node.js开发,这里是。先决条件安装Node.js当前版本( ) 安装...
规范 该存储库包含六个组件,... test :自动化压力测试套件。 CodeLM平台的先前版本: :在年的第一场比赛中使用。用PHP / jQuery编写。 :用于2016年竞赛。 2015代码库的改进版本。 :在2017年竞赛中使用。 用Djan
该资源适合计算机相关专业(如人工智能、通信工程、自动化、软件工程等)的在校学生、老师或者企业员工下载,适合小白学习或者实际项目借鉴参考! 当然也可作为毕业设计、课程设计、课程作业、项目初期立项演示等。...
利用Docker提供隔离,自动化和可配置的运行时环境以进行编译和基准测试 产生关键指标以提供对基准代码的有用见解 基准测试运行时的微调可用资源(RAM,CPU)可用于模拟不同的环境 设置 安装以下内容: Docker(v...
我们使用 npm 和 bower 作为包管理器,使用 gulp 作为构建自动化工具。 npm 已经配备了 NodeJS,所以只需安装bower和gulp ,如下所示。 $ npm install -g bower $ npm install -g gulp 然后就可以开始使用 CLI ...
课程中,将会讲解完整的微服务架构,包括基于Spring Cloud作为微服务架构的基础技术架构,基于DevOps思想与Jenkins构建持续交付流水线以及自动化测试套件,基于Docker作为容器部署和运行微服务。同时最有价值的地方...
基于PostgreSQL数据库的自动化CRUD资源(使用pg和co-postgres-queries ) 最先进的API健壮性和安全性(JWT,速率限制,安全标头,基于helmet ) 管理员的单独API,具有不同的安全设置(和登录表单) 内置数据库...
25自动化测试62 单元测试63 剖析Jasmine测试64 测试AngularJS对象65 测试服务65 测试控制器67 Mock对象和异步代码测试68 端对端测试70 日常工作流71 Karmarunner的提示与技巧72 执行测试子集73 调试73 ...