Question

I support and develop a system that links to fifteen different databases to SELECT, UPDATE and DELETE information. I am a single developer.

I have started to use source control (tortoiseSVN). I hear the term "nightly builds" and I believe I would benefit from this. I have read a lot of information about nightly builds. I understand it to mean a test system that is updated each night.

The problem I have is that the system I develop is complex and I would have to create fifteen different test databases (some of these were developed in house and some were not), plus there is a data cleansing tool that runs during the day and a test system would have to be setup for this as well.

Is it excusable to say that the system I develop is too complex for a nightly build? I guess not - there are far more complex systems out there. Plus have I understood the concept of a nightly build correctly?

Was it helpful?

Solution

I understand it to mean a test system that is updated each night.

No, a nightly build is not that. It is an automated compilation of your source code, normally accompanied by automatic running of unit and integration tests (though strictly speaking, the compilation part is the build).

Is it excusable to say that the system I develop is too complex for a nightly build?

Excusable? It is an excuse. But you don't have to start with 15 databases being covered by tests. You can start by getting an automated compilation. Then you can add unit tests (that don't touch the database). Then start with integration tests with one database, followed by another, going on till you covered all 15 and the important functionality.

In general, the above can describe a Continuous Integration (CI) environment, where the difference is that in most CI environments a build is triggered on every commit/checkin/push and tests are run (in some places, if all tests are green, the product is also automatically deployed).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top