Software Testing: A Craftsman's Approach.


Table Of Contents of the book "Software Testing: A Craftsman's Approach", Third Edition by Paul Jorgensen, 2008

Software Testing—A Craftsman’s Approach, Third Edition extends the combination of theory and practicality of the first two editions to include agile programming development and discusses the serious effect this emerging area is having on software testing.

Review:

This book is extremely technical and deals strictly with software testing techniques. All techniques are divided in four types (functional, structural, integration and system, and object-oriented testing) and presented with serious and a little formal approach. It is requires some effort to get through this book. First you will need to read mathematics basics that presented in the beginning of the book and used in the description of the different testing techniques. In the same time many colleges use this book as a text book in their classes and it can be useful for the ISTQB Advanced Level certification. If you need to define a software testing process this book is not for you.


Buy now

Search Now:
In Association with Amazon.ca

PART I: A MATHEMATICAL CONTEXT 
A Perspective on Testing 
Basic Definitions 
Test Cases 
Insights from a Venn Diagram  
Identifying Test Cases 
Error and Fault Taxonomies 
Levels of Testing 
Examples 
Generalized Pseudocode 
The Triangle Problem 
The NextDate Function  
The Commission Problem  
The SATM System  
The Currency Converter  
Saturn Windshield Wiper Controller 
Discrete Math for Testers 
Set Theory 
Functions 
Relations  
Propositional Logic 
Probability Theory  
Graph Theory for Testers 
Graphs 
Directed Graphs 
Graphs for Testing 
PART II: FUNCTIONAL TESTING 
Boundary Value Testing 
Boundary Value Analysis 
Robustness Testing 
Worst-Case Testing 
Special Value Testing 
Examples 
Random Testing  
Guidelines for Boundary Value Testing 
Equivalence Class Testing 
Equivalence Classes 
Equivalence Class Test Cases for the Triangle Problem 
Equivalence Class Test Cases for the NextDate Function 
Equivalence Class Test Cases for the Commission Problem 
Guidelines and Observations 
Decision Table-Based Testing 
Decision Tables 
Test Cases for the Triangle Problem 
Test Cases for the NextDate Function 
Test Cases for the Commission Problem 
Guidelines and Observations 
Retrospective on Functional Testing 
Testing Effort 
Testing Efficiency 
Testing Effectiveness  
Guidelines  
Case Study 
PART III: STRUCTURAL TESTING 
Path Testing 
DD-Paths 
Test Coverage Metrics 
Basis Path Testing 
Guidelines and Observations 
Dataflow Testing 
Define/Use Testing 
Slice-Based Testing 
Guidelines and Observations 
Retrospective on Structural Testing 
Gaps and Redundancies 
Metrics for Method Evaluation 
Case Study Revisited 
PART IV: INTEGRATION AND SYSTEM TESTING 
Levels of Testing 
Traditional View of Testing Levels 
Alternative Life Cycle Models 
The SATM System 
Separating Integration and System Testing 
Integration Testing 
A Closer Look at the SATM System 
Decomposition-Based Integration 
Call Graph-Based Integration 
Path-Based Integration 
Case Study 
System Testing 
Threads 
Basis Concepts for Requirements Specification 
Finding Threads 
Structural Strategies for Thread Testing  
Functional Strategies for Thread Testing 
SATM Test Threads 
System Testing Guidelines 
ASF Testing Example 
Interaction Testing 
Context of Interaction 
A Taxonomy of Interactions 
Interaction, Composition, and Determinism 
Client/Server Testing 
PART V: OBJECT-ORIENTED TESTING 
Issues in Object-Oriented Testing 
Units for Object-Oriented Testing 
Implications of Composition and Encapsulation  
Implications of Inheritance  
Implications of Polymorphism 
Levels of Object-Oriented Testing 
GUI Testing 
Dataflow Testing for Object-Oriented Software 
Examples for Part V  
Class Testing 
Methods as Units 
Classes as Units  
Object-Oriented Integration Testing 
UML Support for Integration Testing 
MM-Paths for Object-Oriented Software 
A Framework for Object-Oriented Dataflow Integration Testing 
GUI Testing 
The Currency Conversion Program 
Unit Testing for the Currency Conversion Program 
Integration Testing for the Currency Conversion Program 
System Testing for the Currency Conversion Program 
Object-Oriented System Testing 
Currency Converter UML Description  
UML-Based System Testing 
StateChart-Based System Testing 
PART VI: MILLENNIUM TESTING 
Exploratory Testing 
The Context-Driven School 
Exploring Exploratory Testing 
Exploring a Familiar Example 
Exploratory and Context-Driven Testing Observations  
Model-Based Testing 
Testing Based on Models 
Appropriate Models  
Use Case-Based Testing 
Commercial Tool Support for Model-Based Testing 
Test-Driven Development 
Test-Then-Code Cycles 
Automated Test Execution (Testing Frameworks)  
Java and JUnit Example  
Remaining Questions  
Pros, Cons, and Open Questions of TDD 
Retrospective on MDD versus TDD  
A Closer Look at All Pairs Testing 
The All Pairs Technique 
A Closer Look at the NIST Study  
Appropriate Applications for All Pairs Testing 
Recommendations for All Pairs Testing  
Epilogue: Software Testing Excellence  
Craftsmanship 
Best Practices of Software Testing 
Top Best Practices for Software Testing Excellence 
Mapping Best Practices to Diverse Projects 
 


Find more on our page - Software testing books recomendations

On this page I put Table of Contents Software Testing: A Craftsman's Approach, Third Edition by Paul Jorgensen, 2008



Software Testing Books Main Page
© January 2008 Alex Samurin geocities.com/xtremetesting/ and © eXtremeSoftwareTesting.com