Category archives: jenkins

ShiningPanda plugin 0.15 is out!

We released today a new version of the ShiningPanda plugin for Jenkins. For those who don't know this plugin yet, it is probably the easiest way to setup your Python projects with Jenkins. But let's have a look at the new features:

Python installations

/media/blog/47/installations.png

Python installations now accept a path to a Python binary in the Home or executable fields. This is useful for multiple system installations in /usr on Unix.

Custom working directory

/media/blog/47/workspace_home.png

ShiningPanda creates files in JENKINS_HOME/shiningpanda, notably virtualenvs for various builders. This option let you change this working directory. You can for instance use ...

Continue reading

Multi-browser Selenium tests with Django 1.4+ on Jenkins

In our previous blog post, we saw how to enable Selenium tests on a Django 1.4+ project. Now it's time to see how to integrate it with Jenkins!

Platform

This post assumes a Debian GNU/Linux environment, but you should not have much trouble adapting it to another Linux distribution. All requirements are listed in our initial blog post: Selenium, Python and Jenkins on Debian - 1/3.

Global Configuration

First ensure that the latest version of the ShiningPanda Plugin, Xvnc Plugin, Violations Plugin and Cobertura Plugin are installed (check on Manage Jenkins > Manage Plugins > Installed page). If not ...

Continue reading

Multi-browser Selenium tests with Django 1.4+

In Selenium tests with Django 1.4+ we saw how to run Selenium tests on Django 1.4+ based projects.

However, these tests were run on a single Web Driver, ie. a single browser.

Fortunately, Selenose 1.3 makes it easy to test on multiple browser. Let's switch the single browser tested project to a multiple browser tested project.

Sample project

Let's use the same poll application from the Django tutorial.

The source code can be found on the django14-selenose branch of this repository. Clone it with:

$ git clone -b django14-selenose https://github.com/shiningpanda/djangotutorial-selenium.git

Then ...

Continue reading

Selenium tests with Django 1.4+ on Jenkins

In our previous blog post, we saw how to enable Selenium tests on a Django 1.4+ project. Now it's time to see how to integrate it with Jenkins!

Platform

This post assumes a Debian GNU/Linux environment, but you should not have much trouble adapting it to another Linux distribution. All requirements are listed in our initial blog post: Selenium, Python and Jenkins on Debian - 1/3.

Global Configuration

First ensure that the latest version of the ShiningPanda Plugin, Xvnc Plugin, Violations Plugin and Cobertura Plugin are installed (check on Manage Jenkins > Manage Plugins > Installed page). If not ...

Continue reading

Python & Java: a unified build process (4/4)

In our previous blog posts dedicated to Python and Java (see the first, second and third, we saw how to get a fully functional build, release and deployment workflow with Maven.

Integration

It's now time to introduce Jenkins and see how can we put our sample project in integration.

First of all, Jenkins needs some parseable test results. In Java, the maven-surefire-plugin handles this by default. In Python, nose will generate them for us.

Modify setuptools/pom.xml to call python setup.py nosetests instead of python setup.py test on test phase:

 1 <execution>
 2   <id>setuptools test ...

Continue reading