Alibaba/f2etest
github:https://github.com/alibaba/f2etest
Star: 1346
Fork: 275
Watch: 161
Up to 2016.08.17
F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案。
注:F2e test = Front to End Test = 前端测试
浏览器云
在之前,多浏览器兼容性人肉测试,我们一般有三种解决方案:
- 本机安装大量的虚拟机,一个浏览器一个虚拟机,优点:真实,缺点:消耗硬盘资源,消耗CPU资源,打开慢,无法同时打开多个虚拟机
- 使用IeTester等模拟软件,优点:体积小,资源消耗小,缺点:不真实,很多特性不能代表真实浏览器
- 公用机器提供多种浏览器,优点:不需要本地安装,不消耗本机资源,缺点:资源利用率低,整体资源消耗非常恐怖
现在,有了F2etest,一台普通的4核CPU的服务器,我们就可以提供给20人以上同时使用。
在这之前我们需要20台机器,相比之下,至少10倍的硬件利用率提升。
再加上我们平时做多浏览器测试时,并不是满负荷工作。经常是测试一会,开发一会,或者是忙点别的事,因此理论并发能力至少可以再乘2,就是说一台4核服务器,理论上跑40人同时在线,非常轻松。
但是在此之前,如果我们是单人虚拟机模式的话,当你没在测试时,CPU、内存、硬盘,全部都是处在浪费状态。
相比之前的方案,我们有以下优势:
- 10倍以上硬件利用率,降低企业运营成本
- 非常棒的用户体验,极大的提高测试效率
- 真实浏览器环境,还原真实测试场景
在这个解决方案中,我们使用了以下技术:
Guacamole: 开源的HTML5远程解决方案 Windows Server: Server版Windows,最大化复用机器资源 hostsShare: 跨浏览器,跨服务器的hosts共享
自动化测试
对于浏览器功能来讲,自动化一般分两种形式:
组件单元测试 UI自动化 无论哪种方式,F2etest都为您提供了最完美的整体解决方案。
我们拥有强大的JS单测云,让你的JS单元测试一键运行在云上所有浏览器,可视直观的查看代码覆盖率。
自测云更让你能够零成本的完成自动化脚本的编写,轻松搞定质量保障问题。