This book gives a lengthy and fairly comprehensive overview of software testing that emphasizes formal models for testing. In the introduction, the author gives a general overview of the testing process and the reasons and goals for testing. He carefully distinguishes between testing and debugging, and advocates these as separate activities. Testing according to the author is done to find bugs; whereas debugging is done to find the origin of the bugs and fix them. The author characterizes testing as either functional or structural. Functional testing treats the program from the user's point of view, with inputs given to the program, and then the outputs are checked for conformance to a specified reference. Structural testing examines how the program is implemented, in terms of programming style, design, etc. The notion of an oracle is defined as any program or process that specifies the expected outcome of a collection of tests. The author clearly identifies and characterizes the different types of tests that arise in development organizations, such as unit testing, regression testing, stress testing, and integration testing.
Table of Contents:
UNIT I :Introduction : Purpose of testing, Dichotomies, model for testing, consequences of bugs, taxonomy of
bugs
UNIT II :
Flow graphs and Path testing : Basics concepts of path testing, predicates, path predicates and achievable paths, path sensitizing, path instrumentation, application of path testing.
UNIT III :
Transaction Flow Testing : Transaction flows, transaction flow testing techniques. Dataflow testing:- Basics of dataflow testing, strategies in dataflow testing, application of dataflow testing.
UNIT IV :
Domain Testing:-domains and paths, Nice & ugly domains, domain testing, domains and interfaces testing, domain and interface testing, domains and testability.
UNIT V :
Paths, Path products and Regular expressions : Path products & path expression, reduction procedure, applications, regular expressions & flow anomaly detection.
UNIT VI :
Logic Based Testing : Overview, decision tables, path expressions, kv charts, specifications.
UNIT VII :
State, State Graphs and Transition testing : State graphs, good & bad state graphs, state testing, Testability tips.
UNIT VIII :
Graph Matrices and Application : Motivational overview, matrix of graph, relations, power of a matrix, node reduction algorithm, building tools.
Usage of JMeter and Winrunner tools for functional / Regression testing, creation of test script for unattended testing, synchronization of test case, Rapid testing, Performance testing of a data base application and HTTP connection for website access.
Post a Comment