Chapter 11. Functional Tests
Why Read This Chapter?
The purpose of this chapter is to point out several test types and techniques used in functionality testing, whether we have specifications or not. The premise of this testing is to find errors in the process of checking if the product is useful for its intended users and if it would do what a target user reasonably expected it to do. This chapter analyzes a variety of functional tests with an eye on their use during the testing process.
Functional testing is a broad category of testing. It includes a variety of testing methods such as FAST, TOFT, boundary, FET, exploratory testing, and other attacking techniques. This chapter details some of these functional test types and relates them to Web-testing examples.
To better define the scope of functionality tests, look at various degrees of the functioning of an application:
FAST. Does each input and navigation control work as expected?
TOFT. Can the application do something useful as expected?
Boundary. What happens at the edge of specified use?
Forced-error. What happens when an error condition occurs?
Exploratory. What does experience tell about the potential problematic areas in the application? This involves simultaneous learning, planning, and executing tests.
Software attacks. Why does software fail? How do you turn lessons learned into ...