In software engineering, continuous integration (CI) implements the continuous building and automated testing of the full software product on a frequent schedule. At least once a day, often several times a day and sometimes as often as after every check in to the version control system.

learn more… | top users | synonyms

3
votes
1answer
252 views

Continuous integration and modifying existing UI automation tests

Our team is currently facing a situation where we are changing a feature that is in the product today. This feature has Selenium automation tests associated with it. We are performing a fairly major ...
12
votes
4answers
849 views

How do I learn the right approach to implement half a feature?

I lead a development team and I want to release our product as often as possible (Continuous Delivery). In many cases, we have to implement a feature that takes longer to implement than the time ...
2
votes
2answers
194 views

Who fixes broken tests? [duplicate]

Our small team has made the curious observation that diagnosing and fixing broken automated tests is a useful activity; in particular, if the CI build indicates that developer A's last check-in broke ...
1
vote
3answers
490 views

How can I effectively manage long-term feature development and short-term bug fixing at the same time?

We have a huge C, and C++ code base. There is a plan to add a new feature into the existing system, but, this should happen only after 3 to 4 months. So, we are looking for best possible options. ...
4
votes
2answers
2k views

Continuous Integration with Bamboo and Maven, Managing Version Numbers?

I am currently developing a product that is broken up into a few main parts: A Server, an Android client, a Desktop client, and a class library for providing common data structures. Currently my team ...
0
votes
1answer
117 views

Java continuous integration with extras [closed]

I am very new to continuous integration, but I decided to give it a shot. Unfortunately I found there to be huge quantities of different tools, and each one is sizable and seems to be difficult (I am ...
46
votes
6answers
4k views

65.000.000.000 tests to run

I was asked about how to run a suite of 65.000.000.000 tests and I wonder if it is normal to have a project with such a huge amount of tests. Have you worked in projects with this characteristic?
5
votes
2answers
421 views

Tools that can catch “fake coverage”?

Hypothetical scenario: codebase is exercised by unit tests run by a TeamCity build-bot, that also uses the built-in dotCover tool to provide coverage metrics. The build will fail if less than X% of ...
4
votes
3answers
350 views

Should integration test be included in continues integration (CI)?

Assume that we are developing a web application, and Hudson does typical jobs such as compile, unit test and static code analysis. But the tricky part is: Hudson deploys and starts up application ...
2
votes
1answer
202 views

Build status reporting on javascript project

I have a javascript project which uses Grunt and several plug-ins such as: jshint qunit requirejs optimizer Not all of the developers run the grunt tasks locally (e.g. jshint, qunit), so they ...
0
votes
1answer
216 views

In which cases build artifacts will be different in different environments

We are working on automation of deployment using Jenkins. We have different environments - DEV, UAT, PROD. In SVN, we are tagging each release and placing same binaries in DEV, UAT, PROD. The ...
21
votes
3answers
3k views

Simple explanation of Continuous Integration

How would you define Continuous Integration and what specific components does a CI server contain? I want to explain to someone in the marketing department what Continuous Integration is. They ...
5
votes
3answers
337 views

Who should support and maintain development infrastructure?

I am interested to know what other peoples' experiences are with managing development infrastructure are. I am talking about things like the build server, the central git repo etc etc. Any ...
3
votes
2answers
649 views

How is it possible to build the whole codebase from source at Google scale?

The first answer to an old, recently active question linked to a video which talks about how Google repository is done. One interesting thing which was mentioned is the fact that everything is build ...
4
votes
2answers
334 views

Handling compiler bugs in Continuous Integration

I believe that warnings should be treated as errors. If you start ignoring warnings you'll start missing "important" warnings among the "unimportant" ones. So my Continuous Integration system fails a ...
23
votes
7answers
1k views

how to stay efficient when a build is almost always broken

I work in a middle sized team which shares the same source code and while have a continues integration in place, but as all of us has to work in the same branch, the build is almost always broken. ...
4
votes
1answer
363 views

Suggestions to improve small team workflow (CI / Deployment)

I'd like to improve my team's workflow and architecture. Right now we have a LAMP dev server on which every member of the team has a subdirectory. We work directly in this directory via LAN. There is ...
4
votes
1answer
252 views

Responsibilities of Build Script and Build Server

I need some clarifications on the responsibilities of the Build Script and the Build Server. I read several articles on the Net about continuous integration and builds. Including The F5 Key Is Not ...
4
votes
1answer
79 views

Continuous “Platform” Integration?

We have accumulated a large codebase of somewhat-well-document projects, many of which aren't actively being used, but that we want to be able to start using again quickly if necessary. What is the ...
1
vote
3answers
179 views

Continuous Integration Feedback Cycle

How long should the Continuous Integration process take (i.e. compiling classes and running unit tests + integration test)? On my current project it takes about 30 minutes, is that OK? What's the ...
1
vote
0answers
375 views

Codeigniter modular separation with Phing

I am thinking of managing a product source I am doing using Codeigniter + HMVC. Right now my folder structure is something like this: application |-modules |-module1 | |--controllers ...
12
votes
8answers
403 views

Alternative to “Passing/Broken build” indicator?

When having a continuous integration executing the tests at each commit, a common best practice is to have all the tests passing at all times (aka "do not break the build"). I find some problems with ...
7
votes
3answers
1k views

Branching breaks continous integration?

I think this article, A Successful Git Branching Model, is very well known among experienced DVCS users. I use hg mostly, but I would argue this discussion is fine for any DVCS. Our current ...
3
votes
1answer
464 views

TDD and test automation in applications heavily dependent on databases and user input [closed]

Recently I have been reading online about eXtreme programming and agile practices. I wish to adapt them. However most of my code is all in PHP which is the normal CRUD type web applications. Moreover ...
10
votes
3answers
1k views

How to do external API testing (blackbox)

Assume you are using APIs from a vendor, how to make sure their API is working as expected? My main concern is sometimes the vendor pushed the changes to their code and break the API, we want to have ...
3
votes
6answers
399 views

What build tools do not depend on java (or Ruby)? [closed]

I'm wondering what generic build tools out there include their binary run-times and do not depend on another environment not shipped with them. For example, ANT requires Java, Rake requires Ruby, ...
6
votes
1answer
300 views

How should I expand Jenkins to help me release?

Pushing new Sparkle releases of our internal apps is a pain. I have to make the build, make the release notes file, sign the .zip with the private key, and add a new entry to the appcast file tying ...
4
votes
1answer
3k views

iOS: Using Jenkins for nightly internal builds (TestFlight), plus frequent client builds [closed]

I'm an iOS dev, working for a small agency. I'm currently on a few smaller projects where I'm the only developer. We recently acquired a Jenkins server, but each project is left to fend for themselves ...
6
votes
3answers
701 views

How do I structure code and builds for continuous delivery of multiple applications in a small team?

Background: 3-5 developers supporting (and building new) internal applications for a non-software company. We use TFS although I don't think that matters much for my question. I want to be able to ...
2
votes
1answer
231 views

Can an internally developed fast evolving, agile, short sprint web application lend itself to offshoring?

I have recently been set a target to achieve readiness to successfully manage and deliver results through the usage of offshore teams on our mainline development project within 12 months. Our ...
4
votes
4answers
281 views

CI - How long is continous?

We currently are using CCNet as our continous integration server. Most projects check for changes every 30 seconds (the default) and if needed perform a build (unit tests, stylecop, fxcop, etc). ...
10
votes
5answers
591 views

Should coding standards be enforced by the continuous integration server?

Should coding standards/style be enforced by the continuous integration server running static analysis tools (ex. PMD, StyleCop/FxCop) and failing the build if the standards are not followed? What ...
4
votes
2answers
220 views

How to communicate within a company what is being Continually Deployed

I work for a small development company, 20 people total in the entire company, 3 in actual development, and we've adopted CD for our commits to trunk, and it works great, from a code management and ...
2
votes
1answer
738 views

Code Measuring and Metrics Tools? [duplicate]

I'm in the process of setting up a build server for personal projects. This server will handle all the normal CI stuff, including running large suites of tests (unit, integration, automated UI). ...
10
votes
5answers
665 views

What is Continous Integration (CI) and how is it useful? [closed]

Can some one explain to me the concept of Continious Integration, how it works in an easy to understand way? And why should a company adopt CI in their code delivery workflow? I am a developer and my ...
6
votes
6answers
307 views

How do I get from a highly manual process of development and deploy to continuous integration?

We have a development process which is completely manual. No unit tests, interface tests are manual, and merging and integration are as well. How could we go from this state to implementing continuous ...
12
votes
2answers
6k views

How should I select continuous integration tool? [closed]

I found this cool comparison table for integration servers on Wikipedia, but I am a little uncertain how to rank the tools vs. my needs and interests. The chart itself seems to have a lot of boxes ...
3
votes
2answers
333 views

Branching and CI Builds with Agile

We follow many agile processes, including automated tests, continuous integration, sprint reviews, etc... We're currently having a debate about how often we should branch release builds. We've been ...
6
votes
1answer
447 views

What are the practical examples of code exploration techniques?

Code Exploration (CE) is quite a new term and I wonder if there already any successful examples of implementing this techniques in terms of Continuous Integration principles? In short, Code ...
5
votes
4answers
666 views

What software models are appropriate for daily builds and continuous integration?

On reading the joel test and about daily builds, a discussion with a few tech-lead friends of mine in various companies revealed that they never did daily builds or continuous integration because ...
1
vote
1answer
1k views

Is it a good practice to capture build artifacts in Artifactory that Jenkins produces?

We use Jenkins to run continuous integration builds. The output of these builds might be EAR files, WAR files, or just a collection of files that are TAR'd up. To this point we have used Jenkins to ...
3
votes
6answers
2k views

Does continuous integration involve automatic merging between branches?

When setting up a continous integration environment, does it always entail having the build server pull code and merge between branches? Or is it something you NEVER want to do because you are ...
3
votes
1answer
1k views

How often should we launch SONAR analysis?

I successfully installed Jenkins and then Sonar to go with continuous integration. The firsts reports are not that good in term of rules violations ,comments, code duplication ... I set Jenkins to ...
0
votes
3answers
271 views

Dynamic choice of compilers?

An application has the following logic: client => created *.cpp => sent to the server => cl.exe + *.cpp = *.exe client => created *.cs => sent to the server => csc.exe + *.cs = *.exe client => ...
5
votes
3answers
289 views

How do I go from “here's the zip” to a good release strategy?

I can write code, resolve dependencies, and get my program to run on my computer; I have no idea where to go from here though. How do I get the software ready for distribution? The school ...
3
votes
1answer
124 views

Any articles/research/data comparing pre-checkin validation vs post-checkin validation? [closed]

I'm currently on a team that uses post-checkin validation in our developers' workflow: Developer checks in code (and hopefully runs tests first) CI machine syncs, builds, run tests If tests fail, ...
15
votes
6answers
3k views

Good workflow for software development with scrum and continuous integration

I'm studying an approach to understand better how the continuous integration workflow fits better in a software development company with the scrum method. I'm thinking something like this: Would ...
29
votes
10answers
2k views

Do DVCSes discourage continuous integration?

Say there is a team of ten agile developers. Every day they each pick a task from the board, commits several changes against it, until (by the end of the day) they have completed the task. All ...
4
votes
3answers
383 views

How to conduct a 3 days training on current techniques like TDD and CI

I am tasked to conduct a training for an upcoming team of 20 Java developers for a new project. The project owner wants us to use state of the art development techniques like TDD and CI. The ...
6
votes
4answers
400 views

With continuous integration in .NET, is it acceptable to reference DLLs of rarely-changing assemblies?

My company is looking to implement a CI solution pretty soon, and I am worried about one thing in particular... we are scaling up, which means our solutions are growing with more projects. One thing I ...