Finding errors and preparing your application for release
Testing and debugging are important aspects of developing an application, and they should be performed at every stage of the software development life cycle. This chapter gives you an overview of how to test and debug a Series 60 application.
Without going into specific detail about particular products, the tools and techniques available are highlighted, and hints and tips provided.
This chapter covers the following main topics:
Quality Assurance ” Software development is still a relatively new discipline. However, a lot of collective wisdom has been gathered on the subject, and these observations and experiences have generated standards and guidelines for the development process. Following these standards will ensure a better product and help reduce the tedious and potentially costly debugging and maintenance phases of software development. This section will identify and illustrate good coding practices to help avoid errors in the first place.
Testing ” Although Quality Assurance can go a long way toward producing robust, high-quality applications, confidence that an application has met the required quality standards can be secured only after testing. Formal testing involves a distinct shift in the software life cycle ”a handover of the product from developers to an objective testing body that will assess it. However, informal testing should be performed by developers themselves as the code evolves. This section details the various types of testing tools (and some specific products) that are available. Also provided is an overview of existing formal testing methods and procedures, to enable you to support formal testing efforts.
Debugging ” It is often stated that debugging is as much an art as a science. This is because the origins of unexpected behavior in an application are often difficult to track down, and the process may require lateral and creative thinking. This section focuses on the features commonly offered by IDE debuggers , and how they can be used to aid in the debugging process.
This chapter provides information that should help you to produce an application suitable for commercial release. The three sections, Quality Assurance, Testing , and Debugging , can be read independently, but they should all be considered as part of an overall strategy to help you create a bug-free application. The Quality Assurance section will help you to avoid errors in the first place, Testing provides information on the tools and methodologies available to ascertain the existence of errors, and Debugging shows how you can locate and remove errors.
An example application, Testing , is provided to accompany this chapter. It illustrates how to write a test harness, and in particular how you can test the response of your application to Out-Of-Memory conditions. Details of how to download the full buildable source can be found in the Preface.