Jenkins is an leading open source continuous integration server built with Java. It is used to build and test software projects continuously making it easier to integrate changes to the project. It provides 985 plugins to support building and testing virtually any project.
Below are the advantages of Jenkins :
1. Its an open source tool with great community support.
2. Easy to install and It has a simple configuration through a web-based GUI, which speeds up the Job
3. It has around 900+ plugins to ease your work. If a plugin does not exist, just code it up and share with the community.
4. Its built with Java and hence, it is portable on all major platforms.
5. Good documentation and enriched support articles/information available on internet which will help beginners to start easy
Specifically for a test only project, it is used to schedule jobs for regression testing without manual intervention and hence monitor infrastructural and functional health of a application. It can be used like a scheduler for integration testing and also can be used to validate new deployments/environments on a single click on a Build now button .
The below are some common uses of the jenkins:
1. Building snapshot and release artifacts for your application.
2. Deployment of the released artifact with custom scripts.
3. Continuous integration pipeline support for establishing software development life cycle work flow for your application.
4. Support for scheduled builds & automation test execution.
What can Jenkins Do?
1. Can associate jenkins with a version control server.
2. Can trigger builds by polling, Periodic etc.
3. Can execute bash scripts, shell scripts, ANT and Maven Targets
4. Can Publish results and send email notifications
If you are looking to integrate Selenium WebDriver with Jenkins, in order to run automation tests as part of build process, it is relatively easy to run Selenium tests as part of the Jenkins build, with testing frameworks like TestNG or JUnit is in place. We will look into these articles soon.