7. Continuous Integration
Build and deliver software more rapidly by eliminating pain points
“Continuous Integration doesn’t get rid of bugs, but it does make them
easier to find and remove” – Martin Fowler, Chief Scientist, ThoughtWorks
8. Continuous Integration
Integrate at least Daily
Continuous Integration (CI) is a development practice
Each Check-in is verified by an automated build
Integrating regularly helps to detect errors quickly
Reduces Issues with Distributed Team Environment
Reduces Integration Issues
9. Continuous Integration
Solve Problems Quickly
No more long waiting period for results
Increase visibility which enables greater communication
Spend less time debugging and more time adding features
Proceed in the confidence you’re building on a solid foundation
Stop waiting to find out if your code’s going to work
Reduces Time/Effort consumption by Manual Test Executions
Reduces Time/Effort involved in Redeployment
10. Continuous Integration
Principles and Practices
The Practices
How to do it ?
Maintain a single source repository
Automate the build
Make your build self-testing
Every commit should build on an integration machine
Test in a clone of the production environment
Make it easy for anyone to get the latest executable
Everyone can see what’s happening
Automate deployment
12. POLL ANALYZE
RESULTS
RESULTS
CI ServerVersion Control
Feedback Mechanism
Feedback Mechanism
CommitChanges
CommitChanges
BUILD SUCCESS
BUILD TEST DEPLOY
The Big Picture
BUILD FAILURE
13. CI Server Build & Deploy
Code Version Control
Unit Test Framework
Code Quality
The Toolbox
14. Why Jenkins?
Led by Developers for Developers
Governance and Community
Stability
Primary platform for Plug-ins
Cloud-Enabled
Jenkins, a continuous build tool, enables teams to focus on their work
by automating the build, artifact management and deployment process
15. Maven helps a developer to comprehend the complete state of a development effort in
the shortest period of time
Why Maven?
Making the build process easy
Providing a uniform build system
Controls the entire Build, Test & Deployment phase of CI Setup
Change Log Documents
Unit Test Reports
Keep your test source code separate
Easy ways to update
Easy way to install new plugins
16. Four Steps for using UTPLSQL
Install UTPLSQL
Identify the test cases for a program
Build a Test Package
Run your test
Why utPLSQL?
utPLSQL is a unit testing framework for programmers using Oracle's PL/SQL language
and allows the automated testing of packages, functions and procedures