Agile software development is widely used as it enables to shorten the time to market of the software product and the customers get a return on investment sooner than in case of ordinary software development process.
Agile development process sets some challenges before the test engineers and programmers. Mobile testing, desktop testing and web site testing during an agile project differ from the common ones.
Test Engineers Point out Such Hallmarks of an Agile Project:
- unstable, frequently changing system;
- active customer participation in the project;
- many iterations;
- little documentation;
- automated testing is frequently required.
These aspects are not relevant to ordinary development process. They complicate execution of proper software testing and demand more effort and concentration from the test engineers.
It turns out that automation is among the most complex tasks of agile software testing. It is hard to write scripts when the application is often altered, especially at the beginning, when there is too little stable code. But latter automated tests are very helpful for regression testing.
The automated tests should be easily maintainable. New tests are added to the regression tests with the application development, and some existing ones may require correction. That is why it is crucial to select the appropriate tools for automation in an agile project.