Continuous Integration Interview Questions

  1. What is Continuous Integration?
  2. Why is Continuous Integration important?
  3. How is Continuous Integration Implemented?
  4. What are the success factors for Continuous Integration?

What is Continuous Integration?

Continuous Integration can be defined as “Building software and taking it through as many tests as possible with every change”.

Why is Continuous Integration important?

Two important reasons:

  • Defects found early cost less to fix : When a defect is found immediately after a developer codes it, it takes 10x times less time to fix it compared to finding the defect a month later.
  • Reduced Time to Market : Software is always tested. So, it is always ready to move to further environments.

How is Continuous Integration Implemented?

Different tools for supporting Continuous Integration are Hudson, Jenkins and Bamboo. Jenkins is the most popular one currently. They provide integration with various version control systems and build tools.

What are the success factors for Continuous Integration?

Implementing the tools for Continuous Integration is the easy part. Making best use of Continuous Integration is the complex bit. Are you making the best use of your continuous integration setup? Here are the things you would need to consider.

  • How often is code committed? If code is committed once a day or week, the CI setup is under utilised. Defeats the purpose of CI.
  • How is a failure treated? Is immediate action taken? Does failures promote fun in the team?
  • What steps are in continuous integration? More steps in continuous integration means more stability.
    • Compilation
    • Unit Tests
    • Code Quality Gates
    • Integration Tests
    • Deployment
    • Chain Tests
  • More steps in continuous integration might make it take more time but results in more stable application. A trade-off needs to be made.
    • Run Steps a,b,c on a commit.
    • Run Steps d & e once every 3 hours.
  • How long does a Continuous Integration build run for?
    • One option to reduce time taken and ensure we have immediate feedback is to split the long running tests into a separate build which runs less often.

If you loved these Questions, you will love our PDF Interview Guide with 400+ Questions.
Download it now!.

400+ Interview Questions in 4 Categories:
  1. Java : Core Java, Advanced Java, Generics, Exception Handling, Serialization, Threads, Synchronization, Java New Features
  2. Frameworks : Spring, Spring MVC, Struts, Hibernate
  3. Design : Design, Design Patterns, Code Review
  4. Architecture : Architecture, Performance & Load Testing, Web Services, REST Web Services,Security, Continuous Integration