让mocha+nightmare 在ubuntu上运行起来

为了让UI 自动化脚本在Linux server上跑起来,也就是headless browser automation,我在网上查了一下,基本就2种解决方案:

  1. 基于phantomjs的headless browser自动化测试框架;
  2. 使用xvfb命令让case在后台运行;
    最终我采用了第一种方案,在我的MAC OS系统搭建完成后,调试case跑起来都没有问题,但是当我把测试脚本放在阿里云上的Ubuntu操作系统运行时,根本跑步起来。网上搜索了一下根本原因,是因为Ubuntu Server缺失了一系列图形化界面用到的依赖包,虽然运行的时候不会在screen上展示,但是实际上需要在一个虚拟环境里模拟运行。
    解决方案:
    按照下列的依赖:

apt-get update && apt-get install -y xvfb x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic x11-apps clang libdbus-1-dev libgtk2.0-dev libnotify-dev libgnome-keyring-dev libgconf2-dev libasound2-dev libcap-dev libcups2-dev libxtst-dev libxss1 libnss3-dev gcc-multilib g++-multilib xauth --no-install-recommends && apt-get autoclean && apt-get clean

然后运行用xvfb-run命令运行:

xvfb-run ./node_module/mocha/bin/mocha test/test.js

你可能感兴趣的:(让mocha+nightmare 在ubuntu上运行起来)