【F2Etest】多浏览器兼容性测试工具

举报
shiyini 发表于 2018/10/10 09:54:39 2018/10/10
【摘要】 1、F2etest简介F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案。注:F2e test = Front to End Test = 前端测试 在之前,多浏览器兼容性人肉测试,我们一般有三种解决方案:1. 本机安装大量的虚拟机,一个浏览器一个虚拟机,优点:真实,缺点:消耗硬盘资源,消耗CPU资源,打开慢,无法同时打开多个虚拟机2. ...

1F2etest简介

image.png

F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案。

注:F2e test = Front to End Test = 前端测试

 

在之前,多浏览器兼容性人肉测试,我们一般有三种解决方案:

1.         本机安装大量的虚拟机,一个浏览器一个虚拟机,优点:真实,缺点:消耗硬盘资源,消耗CPU资源,打开慢,无法同时打开多个虚拟机

2.         使用IeTester等模拟软件,优点:体积小,资源消耗小,缺点:不真实,很多特性不能代表真实浏览器

3.         公用机器提供多种浏览器,优点:不需要本地安装,不消耗本机资源,缺点:资源利用率低,整体资源消耗非常恐怖

 

现在,有了F2etest,一台普通的4CPU的服务器,我们就可以提供给20人以上同时使用。在这之前我们需要20台机器,相比之下,至少10倍的硬件利用率提升。再加上我们平时做多浏览器测试时,并不是满负荷工作。经常是测试一会,开发一会,或者是忙点别的事,因此理论并发能力至少可以再乘2,就是说一台4核服务器,理论上跑40人同时在线,非常轻松。但是在此之前,如果我们是单人虚拟机模式的话,当你没在测试时,CPU、内存、硬盘,全部都是处在浪费状态。

所以相比之前的方案,我们有以下优势:

1.         10倍以上硬件利用率,降低企业运营成本

2.         非常棒的用户体验,极大的提高测试效率

3.         真实浏览器环境,还原真实测试场景

 

当然F2etest不仅仅有浏览器云,还有WebDriver云、UI RecorderUI自动化)、Karma + F2etestJS单元测试)

 

2F2etest原理

image.png

CentOS主要用来部署guacamole服务,用来通过f2etest-web网页端进行远程桌面登陆windows server进行管理和查看

WindowsServer2008用来部署webdriver server,可以是集群,这里只部署一台机器,集群部署方式和一台部署都是一样的方法

 

3F2etest部署

1、主要步骤部署参考下面链接,写的很详细。

http://shaofan.org/f2etest/

2、我们使用公司黄区hicloud机器部署,部署机器镜像如下:

CentOScentos7.2_64_en_basic

Windowswin2008_R2_sp1_64bit_en_basic

3、由于黄区网络等限制,部分指导书中内容部署方式可能不同,需要改成其他部署方式;

4、部分工具软件不能直接从上面获取到,需要从网上下载

                NodeJS下载:https://nodejs.org/en/download/

                F2etest下载:https://github.com/alibaba/f2etest

5、防火墙禁用命令(centos7.2)不能使用指导书中的,需要使用如下:

                systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

6、安装cairo-develgcc等软件包需要替换软件源,参考下面地址中的方法替换软件源之后,再去安装才能正常安装;

                http://3ms.huawei.com/km/blogs/details/2613285

7、安装好mysql之后,查询到对应的密码,但是不能登录,可能需要我们强制修改一下密码,这个网上帖子较多,就不赘述了。

8、安装nodejs时可能由于我们的单板访问网络等问题,需要设置一下proxy权限。

                export https_proxy=http://userid:passwd@proxy.huawei.com:8080/

9、执行curl --silent –location…报错,加上-k 忽略证书即可

10nodejs不能通过命令在linux上下载下来,我们可以通过步骤4下载上传到linux上,安装参考下面链接

                https://www.cnblogs.com/8765h/p/4777746.html

11、安装淘宝npm镜像也需要访问网络,需要设置proxy,执行完之后通过cnpm -v检查是否配置成功,如果检查不到版本号,则需要下面操作:

                ln -s /home/nodejs/bin/cnpm /usr/local/bin/cnpm

                cnpm -v

12windows服务器如果不能取消登陆密码必须复杂性要求,可以通过下面方式设置,不过每次重启电脑都会恢复默认值(公司china域统一设置),所以建议把指导中步骤7设置到开机启动项中。

                http://blog.csdn.net/liv2005/article/details/53483864

13、配置远程桌面服务时,又是由于网络问题,导致不能使用自动连接的连接方法,不过我们可以通过使用web浏览器的连接方法,具体参考如下:

                http://3ms.huawei.com/km/blogs/details/2004919

14、部署WebDriver云的执行机配置之后,需要重启执行机才能生效

 

通过指导网站和我在公司研发区搭建趟过的坑,相信后续如果有需要安装的应该会快速很多,当我们看到下面的链接,说明我们就基本上成功了。

image.png

 

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。