Testing and Debugging

Testing strategies differ depending on whether you are developing a client or service provider. Because a client application requires one or more service providers to operate, clients should be tested in an environment with different sets of service providers.

Service providers, however, should be tested in isolation before being integrated with other providers. MAPI provides tools that are meant to test the features of a service provider of a particular type. ABVIEW.EXE (for 16-bit platforms) and ABVIEW32.EXE (for 32-bit platforms) exercises the features of an address book provider. MDBVU.EXE (for 16-bit platforms) and MDBVU32.EXE (for 32-bit platforms) works with a message store provider.

To test any service provider in isolation, use one of these sample applications and limit the entries in the profile the provider to be tested. Include any other service providers that are absolutely necessary. For example, to test a transport provider, your profile would contain that provider, the personal address book (PAB), and a message store. For more information about these tools, see Address Book Viewer and Message Store Viewer.

All clients and service providers can benefit from using a set of debugging macros provided by MAPI in the MAPIDBG utility. This utility is controlled by the entries in its initialization file, MAPIDBG.INI. MAPIDBG.INI is used to control various features of the MAPI subsystem. The file resides in the Windows directory and is organized in sections, similar to other Windows initialization files and MAPISVC.INF. Sections are labeled in the following format with each section containing several entries that affect the utility's behavior:

[SectionName] Section
 

For detailed information about the various sections in the MAPIDBG.INI file, see File Format of MAPIDBG.INI.