Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


advertisement
 

Top 6 Tips for Agile Testing

Companies value the flexibility, transparency and speed of Agile software development procedures, which are being adopted more and more.


advertisement
As software development practices continue to evolve, it has become increasingly important to test and modify software from the perspective of the group that will ultimately decide the fate of an organization's business -- their customers.

With the customer perspective in mind, Agile methods are becoming a more common development approach. Companies value the flexibility, transparency and speed of these Agile development procedures, which are getting adopted more and more even for large development and testing projects.

[login] Agile development enables organizations to deliver products early while making any necessary changes for future roll-outs along the way. Agile testing plays a critical role in this. Testing at an early stage -- and in parallel with software development -- ensures that the quality of the software satisfies all necessary requirements. Most importantly, it enables developers to find potentially costly errors earlier in the development process, saving time, money and resources.



Traditionally, quality assurance teams have lacked visibility into what is being tested, the actual test results, the business requirements driving testing and the extent to which they are reflected in the testing requirements. The movement toward Agile adoption promotes environments where organizations can deliver and benefit from real-time visibility into testing activities and the quality status of a project.

In order to deliver quality software, IT organizations using Agile testing methods collaborate more effectively with the business to improve project delivery outcomes.

As organizations continue to turn to Agile methods to speed up time-to-market, reduce risk, and improve the overall quality of their software projects, we have pulled together six practical tips for developers on how they can optimize their software testing procedures.

1. Test Early and Often

Not just some, but all relevant test procedures for a given project must be carried out comprehensively as early as possible in the lifecycle of a project. This means that unit tests, functional tests and load tests must be built into project planning from the start. By doing this, problems can be identified early and can be rectified before they become roadblocks capable of stalling the entire project.

2. Integrate your Unit Testing

Unit testing is a critical step in the development process that helps developers ensure that the code being used will actually do what it is designed to do and will behave in the way it is intended. As as foundational step of the process, unit testing must be integrated into the test management environment. This increases test coverage -- particularly in cases where several configurations have to undergo testing.

3. Load test daily

As more and more software is designed for massively scalable deployments, load testing has emerged as an important step in the development process. The best product in the world will be useless if it crashes under the weight of too many users. Simple load tests should be incorporated into the daily software build in order to identify performance problems as early as possible.

4. Automate your testing

Manual testing can be a tedious, time-consuming and inefficient process that not only wastes time and resources, but is also more prone to error. Early test automation in the development process will lead to greater test efficiency and eliminate the inaccuracies of manual processes. In addition, test automation makes sprint to sprint regression testing possible.

5. Know your start points

Test starting points must be clearly defined throughout the testing process, so it is important to take starting points into consideration even in the development stage. For example, developers and testers can attach "testability hooks" to existing interfaces, or they can add attributes that can be used for the test procedure.

6. Don't be too rigid

One of the primary benefits to Agile testing is the flexibility it delivers to the development teams. Software development projects are not static -- priorities, goals and requirements can be fluid and often change throughout the development lifecycle. Regular, scheduled assessment of test exercises priorities during the course of the project can ensure that the team is always testing against the most up to date set of requirements and living up to the flexible environment that Agile development was designed to foster.



   
The product director of test automation at Micro Focus, Joachim Herschmann is responsible for the company's automated testing offerings. With more than 15 years of experience in the software development and testing disciplines, he has been a frequent speaker and instructor on these topics for more than a decade. Joachim joined Micro Focus in July 2009 through the acquisition of Borland where he was in charge of the company's Lifecycle Quality Management suite of products. Previously he was a consultant specializing in the implementation, testing, and launching of large-scale Web site projects.
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap