Continuous
Integration for QA
The Agile practice is completely changed the QA approach.
Sprint iterations brought new practises to deliver the software quickly and
with trusted quality. With the given limited time and dynamically changing environment challenges the QA.
Continuous integration practise is the
blessing in disguise.
Continuous integration enforces a discipline to integrate
the tests more frequently and offers the benefits like reduced manual effort of
running tests, easier trouble shooting, produces deployable software at any
point of time. It also helps to get the confidence in the software, provides
better visibility of software health and transparency.
Continuous integration tools are evolved over the time. In
the initial days, I remember using Cruise Control. Cruise Control had its own
limitations like not able to detect the hanging builds, showing the test status
in live. But the next generation tools are evolved with many features
incorporated and fulfils all needs of CI users. I personally admire TeamCity,
as it offers great set of features and provides many build runners like command
line runners, Junit, NUnit etc. In the recent past Jenkins is gaining momentum
due to lot of features for free of use!
The general approach to hook in your tests into continuous
integration tool is:
- Create a CI QA project in CI tool.
- Configure the source control in your QA project.
- Configure list of agent machines in the CI pool to run the test.
- Choose the build runner. For example, if your tests are written in Junit use a Junit build runner. It can be NUnit or CLI runner depends on your need.
- Create an ANT/MSBuild script and add this as a driver script in your CI QA project.
- Create a run decency or build chain dependency.
- Create publish rules.
No comments:
Post a Comment