Consultant Kirsi Jeromaa, freshly started at the beginning of August in Eficode's Tampere office, is telling about test automation and the advantages it brings.
Do you own your company’s source code? Probably you do. What about tests?
These days every company utilises some kind of software. Software development might be outsourced or in-house. Of course there are cases where source code is owned by a subcontractor, but that usually is more beneficial for the subcontractor. The company should own the source code and avoid being depended on a certain subcontractor. Same logic can be applied with the test automation.
It is wise to have the ownership of the components which are making the software reliable: the automated tests. That’s not covered in the most cases, as usually only the source code is delivered to the company. Is that really a problem? Well, that is not a problem if the company is not planning on further developing their software products.
Where do you keep your source code? In Git or Subversion or some other version control system. But where do you keep your tests?
The company should develop and version it’s test automation also with a version control system. When this is done, the company has ownership of it’s test automation and tests are easily accessible for continuous integration server like Jenkins. This, in turn, speeds up software projects as no time is wasted on manual testing.
After test automation is in place, company will also have the possibility to have ownership of it’s continuous integration pipeline. Continuous integration pipeline is triggered by the developer when he/she commits new code. New releases are created based on test results. If tests are successfully executed, new release can be made.
Combined test automation and continuous integration pipeline are together the way most competitive companies are developing software. Goal is not to be Amazon, Google or Facebook, but to apply new technology when suitable.