Visual Basic

Navigational Testing

This test determines whether each window can be navigated to by initiation (via all the multiple ways of initiating) of all the different functions from any other appropriate window in the system, without necessarily performing any of the detailed processing that might be required when it gets there. Again, the best format for this test is a checklist, as shown in Table 15-3. Each list is unique to the particular window that is being tested. The list of navigational actions and results can be easily retested and verified by the test reviewer.

Table 15-3 Example Navigation Design Checklist


Action Result Navigation Checked
File : New Entry fields reinitialized for new input
File : Open Windows Open dialog box displayed
File : Delete Customer details deleted after confirmation
File : Print Windows Print dialog box displayed
File : Exit Application terminated
View : Customer Orders Customer Orders screen displayed
Options : Toolbar Toolbar display toggled
Help : Contents Application Help file contents displayed
Help : Search Application Help file search displayed
Help : Using Help Windows Help file displayed
Help : About Application About box displayed

Functional Testing

Having now tested that an individual window (or group of windows) is designed correctly, contains all the functions it should, contains the required methods for initiating those functions, and can navigate via those functions to all the places it has to go, you can now proceed to the "real" testing of the system. Functional testing ensures that the nuts and bolts functions of the system are actually tested. For example, when you initiate the Save function for a document (regardless of how you do it: via the mouse, the keyboard mnemonic keys, or a keyboard accelerator key), does the document get saved to disk correctly? The list of such tests will be a smaller list once the window design and navigational aspects of initiating a function are separated out. This part of the testing is probably the one that equates most closely (although perhaps not definitively) with the old concept of unit testing.

You would have one of each of these checklists per window in the application. Remember also that automated testing tools can be very useful for testing Visual Basic applications.

You should investigate many other forms of testing, among them these:

  • Regression test at check-in
  • Automated testing
  • Usability testing
  • Lots of pure pounding

Also, remember that bug tracking and the collection of metrics are both very important. A properly thought-out test strategy is vital for any Visual Basic 6 enterprise development. Shorten this phase at your peril!