Selenium and Jenkins Integration on CentOS

系统 1761 0

1. Environment Required

    CentOS Linux release 6.0 (Final) ( cat /etc/redhat-release )

    JDK: jdk1.6.0_27 (/opt/)

    ApacheTomcat: apache-tomcat-6.0.33 (/opt/)

1.1 Extract JDK and Apache Tomcat ( tar xvf *.tar.gz )

1.2 Set environment variables like below:

 1.2.1 nano ~/.profile or /etc/.profile ( nano is better than vi, we can install it using yum install nano in CentOS)

JAVA_HOME=/opt/jdk1.6.0_27
CLASSPATH=.:$JAVA_HOME/lib/tool.jar
ANT_HOME=/opt/apache-ant-1.8.2
DISPLAY=:1.0
PATH=:$ANT_HOME/bin:$JAVA_HOME/bin:$PATH
export LANG="en_US.utf8" JAVA_HOME CLASSPATH PATH

 1.2.2 source ~/.profile

 1.2.3 verify if set successful using echo $JAVA_HOME

1.3 Start Apache

cd /opt/apache-tomcat-6.0.33/bin

sh startup.sh or ./startup.sh

1.4 Verify if Apache work well

http://host:8080

If it cannot be accessed, it may be relevant with firewall , just close firewall using  service iptables stop or add a rule to open 8080

2. Install Jenkins

There are 2 ways to install it, one is using rpm(refer to http://jenkins-ci.org/   CentOS), another is using jenkins.war

2.1 For first method: http://pkg.jenkins-ci.org/redhat/  this will installed jenkins in /var/lib/jenkins and the service will in /etc/init.d/jenkins

When starting jenkins, there is an error saying  /usr/bin/java: No such file or directory

The solution is to make a soft link using ln -s $JAVA_HOME/bin/java /usr/bin/java

Use this method, there is some issue when integating with Selenium(Firefox Profile cannot be accessed well and if put profile in /tmp/, selenium will hang on Launching firefox....).

2.2 For second method: Download jenkins.war , and copy it to  /opt/apache-tomcat-6.0.33/webapps , and restart apache

Then we can access jenkins using http://host:8080/jenkins

3. Install Firefox and Xvfb

yum install firefox

yum install Xvfb

When start Xvfb using  /usr/bin/Xvfb :1 -ac -screen 0 1024x768x8  there is an issue below:

(EE) AIGLX error: dlopen of /usr/lib64/dri/swrast_dri.so failed (/usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory)
(EE) GLX: could not load software renderer

The solution is to install  mesa-dri-drivers-7.7-2.el6.x86_64.rpm

4. Set environment variable DISPLAY 

DISPLAY=:1.0 (same with Xvfb starting setting)

5. Install font libs

If we start an app like firefox, there will an error like  (firefox:3087): Pango-WARNING **: failed to choose a font, expect ugly output.

The solution is to install font libs using  yum install xorg-x11-font*

6. Install Selenium plugins

Jenkins-Manage Jenkins-Available-Check Selenium plugins: Hudson Seleniumhq plugin  and   Selenium HTML report  to install

7. Download selenium server jar, and put it in /opt/

8. Configure selenium server path

Jenkins-Manage Jenkins-Configure System

9. Configure a job

Selenium and Jenkins Integration on CentOS

Selenium and Jenkins Integration on CentOS

Note: Firefox need a profile template to launch, the template can be copied from other machine.

How to create a profile template? Just close firefox browser, and type firefox -ProfileManager in terminal, then the dialog pops up, and we can create it here.

Selenium and Jenkins Integration on CentOS


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论