Automated tests MUST be fast to reflect the status of a project in real time. The idea is this:
- after performing any commit in the automatic assembly of the repository (as quickly as possible).
- if automatic tests with automatic start are running. MUST be fast.
This is the best way to find out if your changes have changed.
At first it seemed that it was difficult to make the assembly, but we managed to save it for about 100 seconds. to solve 105 (!) projects (MSVS 2008 C #).
The tests turned out to be not so simple (we use NUnit FW). Unit testing is not a big problem. These are integration tests that are killing us. And itβs not the fact that they are slower (any ideas on how to make them faster are very appreciated), but the fact that the environment should be set up, MUCH slower (atm ~ 1000 seconds)!
Our integration tests use web services (19 so far) that need to be redistributed to reflect recent changes. This includes restarting services and a lot of HDD activity.
Can anyone share their experience on how the environment and workflow should / can be organized / optimized to consolidate the automated testing phase. What are the "low level" bottlenecks and workarounds.
PS books and wide articles are welcome, but real world working solutions are much more appreciated.
performance continuous-integration testing automated-tests
Dandikas
source share