Jenkins is the way to automate the boring stuff

Automating Unit Testing, Security Scanning and UAT

Submitted By Jenkins User Mohamad Farhan bin Zainudin

Accelerating testing for this Malaysian DevOps-as-a-Service company.

Industry:  Software development

Programming Language: Node.js, Python, GO

Platform: Docker or Kubernetes, Linux

Version Control System: GitLab

Build Tool: Composer

Team Members: Celeste Yap, Senior DevOps Engineer

Community Support: Jenkins.io websites & blogs

Software delivery acceleration with an
end-to-end CI/CD pipeline using Jenkins

Background:  As a cloud engineer for a technology-centric company that focuses on helping clients realize their Asia-Pacific digital needs, fast software delivery isn’t just a “nice to have,” it’s a “must-have.”

Before we used Jenkins for automating the unit testing, security scanning, and user acceptance testing (UAT), our developers had to do all the tests manually. This is unacceptable as these processes are not just tedious, they also slow down our developer workflow. Using Jenkins, we manage to create a new workflow for our developers, making the code faster and of higher quality than ever before.

Goals: Automating all tests for better software quality.

“Jenkins has helped our team create a complete CI/CD pipeline and, in doing so, made our software delivery 3 times faster!”
Mohamad Farhan bin Zainudin, Cloud Engineer

Solution & Results: 

We chose to use Jenkins to automate the unit testing using PHP-unit. In doing so, our developers no longer need to do unit testing manually on their local machines. We also have incorporated Sonarqube scanning for auditing the developer’s code. This helps the developer team identify any bugs or vulnerabilities early, before deploying code to the production environment.  

Lastly, we automated the UAT by incorporating Robot-Framework in the pipeline. Robot-Framework replicates an actual user by checking the web UI according to the unique Robot script created.

We have incorporated several essential Jenkins plugins for this project:

  1. Gitlab plugin
  2. Folders Plugin (Organization)
  3. Git plugin
  4. Pipeline plugin
  5. Sonarqube Scanner for Jenkins

Jenkins has helped our team create a complete CI/CD pipeline and, in doing so, made our software delivery three times faster than ever! We are delighted with the results:

  • Developer’s efficiency increased by 70%
  • Code smell and bugs managed to be detected early
  • Releases cycles shortened from 3 days to 3 hours



Like what you see? Share your Jenkins user story today.

Jenkins® is a CD Foundation project and a registered trademark of Software in the Public Interest, Inc. Copyright Jenkins 2020