693579551 发表于 2015-3-15 09:33:32

Selenium and Jenkins Integration on CentOS

  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 andSelenium 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


  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.
页: [1]
查看完整版本: Selenium and Jenkins Integration on CentOS