2019独角兽企业重金招聘Python工程师标准>>>

翻译自:http://www.installationpage.com/selenium/how-to-run-selenium-headless-firefox-in-ubuntu/

Selenium是一个web自动化测试框架。用它可以实现web应用自动化测试。不过,我不只是用它来做测试,我还用它从电子商务网站签到页面爬取javascript生成的或AJAX的内容。

作为程序员,我不满足于使用Selenium IDE来记录和重放宏记录。那样很蹩脚,而且不适合部署到多台服务器。这时,你需要Selenium WebDriver,它又灵活,而且通过Selenium headless,运行Selenium在服务器上不需要显示设备。

为什么要运行Headless Selenium 测试?

当你希望能在服务器上运行的健壮的自动化操作,而其操作又依赖于 27X7,同时还希望它是稳定的,这时,Selenium是你唯一的选择。但是,Selenium需要运行在浏览器上。所以,你得骗Selenium,让它觉得,它正跑在一台带有显示器的机器上。这样,你就可以不间断的跑自动化测试,同时又不失稳定性和扩展性。

如何在ubuntu上运行Selenium headless

本教程的目标是在使用Mozilla Firefox作为主浏览器的ubuntu上配置和运行selenium headless。

安装Firefox headless

确认你的ubuntu安装的是最新版本的Firefox。我遇到过Selenium的版本和Firefox的版本不兼容问题。如果你没有安装Firefox或者使用的是老版本的Firefox,可按以下步骤升级Firefox:

  • 在/etc/apt/sources.list加入:

    ppa:mozillateam/firefox-stable

  • 运行以下命令升级或安装Firefox

    sudo apt-get update sudo apt-get install firefox

运行成功后,ubuntu上就应该安装好最新版本的Firefox了。

安装Xvfb——一个X虚拟框架

这个仿真框架使用虚拟内存能让X-Server运行在没有显示设备的机器上。这样,浏览器就可以运行了。在ubuntu和Debian上安装xvfb,只要运行:

 sudo apt-get install xvfb

现在,可以运行xvfb服务上一个带有数字的显示设备上,这样是为了防止你在下阶段添加设备时引发冲突。本教程,我们分配一个显示设备 10.

 sudo Xvfb :10 -ac

-ac代表关闭xvfb的访问控制。好了,服务器可以运行了。

启动浏览器

在你运行浏览器前,你首先要设置DISPLAY环境变量,以指定xvfb运行在哪个显示设备上。在加入环境变量前,我们检查一下所有的这些都如我们所料:

 export DISPLAY=:10firefox

如果终端(terminal)没有显示错误,就说明你已经成功运行Firefox在无显示设备的ubuntu上了。它会一直运行,直到你使用ctrl + C或其它类似方法来终止其运行。同时,它不会有任何输出。

如果你能成功运行以上的步骤,那么接下来的部分就是轻而易举了。现在,我们可以在ubuntu服务器上运行selenium,如同你在本地运行一样。本教程的下一部分,我展示了如何运行一个独立selenium服务器,同时使用PHP的selenium webdriver去连接。

小结

很久以前,我也使用selenium做自动化的集成测试,使用HtmlUnit的webdriver,所以不需要显示器。但是HtmlUnit的表现总是有些不如意。而最近在项目中发现这篇文章,解决我长久以来的问题:在没有显示器的服务器上运行Firefox的集成测试。

而本文,我更多尝试的是意译。有不对的地方,谢谢斧正!

转载于:https://my.oschina.net/zjzhai/blog/295288

如何在无显示器的ubuntu下跑前端测试相关推荐

  1. 如何在无显示器的ubuntu下跑selenium

    2019独角兽企业重金招聘Python工程师标准>>> 如何在无显示器的ubuntu下跑selenium 博客分类: java Selenium是一个web自动化测试框架.用它可以实 ...

  2. Ubuntu 下使用 FDDB 测试人脸检测模型并生成 ROC 曲线,详细步骤

    原 Ubuntu 下使用 FDDB 测试人脸检测模型并生成 ROC 曲线 2018年08月01日 20:18:44 Xing_yb 阅读数:101 标签: FDDB 人脸检测 模型测试 ROC 曲线 ...

  3. Ubuntu下跑通py-faster-rcnn、详解demo运作流程

    在不同的服务器不同的机器上做过很多次实验,分别遇到各种不一样的错误并且跑通Py-Faster-RCNN,因此,在这里做一个流程的汇总: 一.下载文件: 首先,文件的下载可以有两种途径: 1.需要在官网 ...

  4. 树莓派教程(1)——手把手教你在无显示器的情况下使用树莓派

    树莓派无显示器安装教程 1.材料准备 2.树莓派简介 3.树莓派装机 3.1.树莓派系统下载 3.2.格式化SD卡 3.3.修复zip 3.4.烧录系统 4.配置WiFi 5.启动树莓派 5.1.获取 ...

  5. ubuntu下跑魔兽世界

    游戏环境:ubuntu 6.06 p4 2.4g 726m scim输入法 nvidia mx 440 wine 9.21 1.安装显卡驱动(不是基于debian的发行版请去相关网站查询下怎么安装显卡 ...

  6. 小觅深度版Ubuntu下跑vins-mono

    最近实验室新买了小觅深度版相机(型号D1000-IR-120/Color),这里记录一下跑vins-mono的过程.由于虚拟机usb可能出现不兼容问题,我使用的是双系统的Ubuntu16.04,对应R ...

  7. Linux下搭建mpi集群(ubuntu下用虚拟机测试)

    一 建立SSH连接(无密码登陆) 1 SSH连接的简单介绍 SSH 为 Secure Shell 的缩写,中文翻译为安全外壳协议,建立在应用层,是一种远程连接安全协议.传统的telnet,pop,ft ...

  8. Ubuntu 下 CPU 负载测试

    在嵌入式系统开发的时候,我们要评估系统散热情况需要满载测试或者测试系统调度情况需要让 cpu 满载运行的软件:stress 堪称利器 这个不算原创,只是自己偶尔用,经常忘记命令,所以记录一下,以后好找 ...

  9. 装不了 pytorch=0.4.0? ubuntu下 基于 cuda=92 和 pytorch=1.2 配置环境跑通 CornerNet 训练和测试流程 步骤详解(包括GPU限制问题详解)

    ubuntu下跑通CornerNet的流程步骤 环境配置 写这篇博客原因? 更改conda_packagelist.txt conda下基于conda_packagelist.txt创建新环境 安装p ...

最新文章

  1. 如何为网站项目添加子项目
  2. 50万买只波士顿动力机器狗,只为训练它“尿”啤酒,还让女朋友尝尝
  3. ObjectARX_图形数据库
  4. 让bind函数支持IE8浏览器的方法
  5. SQLAlchemy 几种查询方式总结
  6. 冯小刚导演系列公益短片之林心如版
  7. FPGA实战操作(1) -- SDRAM(Verilog实现)
  8. python实际应用方面的材料_python应用于哪些方面
  9. 微信小程序把玩(三十三)Record API
  10. app开发第二次总结
  11. 大数据可视化如何实现
  12. 一个开发人员,遇到问题一句“加载出错“就完事了?
  13. R语言学习笔记 | R语言的入门
  14. swift编程语言和c,Swift与Objective C对比:选择更快的开发语言
  15. Bilibili拜年祭启发的小小探索
  16. 紫书刷题记录UVa10935 卡片游戏
  17. 关于MySQL中出现相对应引用词报错“ambiguous”的问题
  18. 学习笔记10:程序设计基础(C)实验(函数)
  19. linux7开放3306端口,CentOS 7 开放3306端口
  20. GYM 101350 M. Make Cents? ( STL

热门文章

  1. acs712电流检测怎么用_工程师都用这个巧妙廉价的电流检测电路!
  2. mysql startswith_Java startsWith()方法
  3. switch -case 理解
  4. python怎么绘制坐标图像_如何使用给定的坐标和python opencv在图像中绘制点?
  5. python解常微分方程龙格库_求解常微分方程组初值问题的龙格库塔法分析及其C代码...
  6. mac 上mysql怎么卸载不了_mac上mysql怎么卸载不了
  7. tomcat启动慢, Creation of SecureRandom instance for session ID generation using [SHA1PRNG]took [xx] mil
  8. 北京大学生物信息学(3)
  9. 计算机端口联机,网络端口之二端口传输机制
  10. 计算机跨专业考经济学,21考研报名人数377万!这八大专业报名人数最多~