Tag Info

New answers tagged

5

Wikipedia gives pretty good summaries of most of these terms. Here is my take on them: Build automation is essentially automating how the software is built instead of manually invoking the compiler. This would be accomplished via tools such as Makefiles or Ant. Deployment automation is less well-define but involves taking your built software and ...


1

Sounds like you have way too many integration tests. Recall Test pyramic. Integration tests belong in the middle. As an example take a repository with method set(key,object), get(key) This repository is used extensively throughout your code base. All the methods that depend on this repository will be tested with a fake repository. Now you only need two ...


1

Integration tests will always be long running as they should mimic a real user. For this very reason you shouldn't run them all synchronously! Given that you are already running stuff in the cloud it seems to me like you are in a prime position to scale your tests over multiple machines. In the extreme case, spin up one new environment per test and run ...


0

It sounds like your code base is growing large, and some code management will help. We use Java, so apologies in advance if I assume this. A large project needs to be broken down into smaller individual projects that compile to libraries. Java tools like nexus make this easy. Every library should implement an interface. This aids stubbing out the library ...


5

I worked at a place that took 5 hours (across 30 machines) to run integration tests. I refactored the codebase and did unit tests instead for the new stuff. The unit tests took 30 seconds (across 1 machine). Oh, and bugs went down too. And development time since we knew exactly what broke with granular tests. Long story short, you don't. Full integration ...



Top 50 recent answers are included